Questions tagged «regex-greedy»

贪婪的regex属性使regex引擎尽可能频繁地重复regex令牌。仅在导致整个正则表达式失败的情况下,才放弃最后的迭代,然后继续进行其余的正则表达式。贪婪的正则表达式标记是“ +”,“ *”,“?”和使用花括号的重复。


8
我该如何使我的比赛在vim中变得不贪心?
我有一个很大的HTML文件,其中包含很多如下所示的标记: <p class="MsoNormal" style="margin: 0in 0in 0pt;"> <span style="font-size: small; font-family: Times New Roman;">stuff here</span> </p> 我试图做一个Vim搜索并替换掉所有内容class="",style=""但是我很难使比赛变得不愉快。 我的第一次尝试是 %s/style=".*?"//g 但是Vim似乎不喜欢它?。不幸的是,删除?匹配使比赛过于贪婪。 我该如何使比赛不愉快?
479 regex  vim  regex-greedy 

21
sed中的非贪婪(勉强)正则表达式匹配?
我正在尝试使用sed清理URL的行以仅提取域。 来自: http://www.suepearson.co.uk/product/174/71/3816/ 我想要: http://www.suepearson.co.uk/ (无论是否带有斜杠,都没有关系) 我努力了: sed 's|\(http:\/\/.*?\/\).*|\1|' 和(转义非贪婪量词) sed 's|\(http:\/\/.*\?\/\).*|\1|' 但我似乎无法使非贪婪量词(?)正常工作,因此最终总是匹配整个字符串。
406 regex  sed  pcre  greedy  regex-greedy 

7
贪婪vs.勉强vs.占有量词
我找到了这本关于正则表达式的出色教程,尽管我直观地理解“贪婪”,“勉强”和“可能”量词的作用,但我的理解似乎还存在严重的漏洞。 具体来说,在以下示例中: Enter your regex: .*foo // greedy quantifier Enter input string to search: xfooxxxxxxfoo I found the text "xfooxxxxxxfoo" starting at index 0 and ending at index 13. Enter your regex: .*?foo // reluctant quantifier Enter input string to search: xfooxxxxxxfoo I found the text "xfoo" starting at index …

3
如何使正则表达式变为非贪婪?
我正在使用jQuery。我有一个带有特殊字符块(开头和结尾)的字符串。我想从特殊字符块中获取文本。我使用正则表达式对象进行字符串内查找。但是当有两个或两个以上特殊字符时,如何告诉jQuery查找多个结果? 我的HTML: <div id="container"> <div id="textcontainer"> Cuộc chiến pháp lý giữa [|cơ thử|nghiệm|] thị trường [|test2|đây là test lần 2|] chứng khoán [|Mỹ|day la nuoc my|] và ngân hàng đầu tư quyền lực nhất Phố Wall mới chỉ bắt đầu. </div> </div> 和我的JavaScript代码: $(document).ready(function() { var takedata = $("#textcontainer").text(); var …


7
Python非贪婪正则表达式
在"(.*)"给定的"a (b) c (d) e"python匹配"b"而不是的情况下,如何制作这样的python正则表达式"b) c (d"? 我知道我可以使用"[^)]"代替".",但是我正在寻找一种更通用的解决方案,使我的regex更加整洁。有什么办法告诉python“嘿,尽快匹配它”?

3
。*和有什么不一样?和。*正则表达式?
我正在尝试使用正则表达式将字符串分成两部分。字符串的格式如下: text to extract<number> 我一直在使用(.*?)<,<(.*?)>并且工作正常,但是在阅读了正则表达式后,我才开始怀疑为什么?在表达式中需要使用。在通过本网站找到他们之后,我才这样做,所以我不确定是否有什么区别。


6
如何捕获多个重复的组?
我需要捕获相同模式的多个组。假设我有以下字符串: HELLO,THERE,WORLD 我写了一个下面的模式 ^(?:([A-Z]+),?)+$ 我想要做的是捕获每个单词,这样第1组是:“ HELLO”,第2组是“ THERE”,第3组是“ WORLD”。我的正则表达式实际上仅捕获了最后一个,即“世界”。 我在这里测试我的正则表达式,我想将它与Swift一起使用(也许Swift中有一种方法可以某种方式获取中间结果,以便我可以使用它们?) 更新:我不想使用split。我现在只需要如何捕获与模式匹配的所有组,而不仅仅是最后一个。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.