*贪婪匹配

[email protected]:~/linsa/checkMultiEnv$ echo "global-online/online-war/online/hehe.txt" | sed -e ‘s/\(.*\)\/online\/\(.*\)/\1\/performance\/\2/‘
global-online/online-war/performance/hehe.txt

其实并不是哈

时间: 2024-08-12 00:51:19

*贪婪匹配的相关文章

正则表达式的括号与贪婪匹配

今天遇到一个正则表达式 regex = '<div class="div_result[\s\S]+?>([\s\S]+)</div>'我原以为将其与网页内容进行匹配之后会获得形如<div class="div_result...</div>这样的完整字符串,但结果只获取了<div></div>之间的内容,十分不解,上网查了之后才知道,原来括号具有获取匹配的作用:(pattern)———会匹配pattern并获取这一匹配

PHP正则 贪婪匹配与非贪婪匹配

$str = ".abcdeabcde"; preg_match('/a.+?e/', $str, $match); print_r($match); Array ( [0] => abcdeabcde ) -------------------------- 贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配,默认情况下是贪婪模式; preg_match('/a.+?e/', $str, $match); print_r($match); Array ( [0]

贪婪匹配和非贪婪匹配

贪婪匹配:在满足匹配时,匹配尽可能长的字符串,默认情况下,采用贪婪匹配 string pattern1 = @"a.*c";   // greedy match Regex regex = new Regex(pattern1); regex.Match("abcabc"); // return "abcabc" 非贪婪匹配:在满足匹配时,匹配尽可能短的字符串,使用?来表示非贪婪匹配 string pattern1 = @"a.*?c&

python 贪婪 非贪婪 匹配

python re模块还是需要重新学习. python readline 和 readlines(), readline() , read() 三者之间的区别,以前一直都不清楚,现在搞清楚是怎么回事了. readlines() 可以一起显示出整个文件,这个也是迭代显示的,需要追行显示,迭代器的指针会被消耗的. python 中的正则是匹配换行以外的所有的字符..* 是匹配不了所有的字符的.在某些情况下,我的结论是正确的,但是在某些情况下,我的结论又是错误的.刚才遇到的问题,现在终于知道是怎么回事

正则表达式话题 【正则表达式--递归匹配与非贪婪匹配 】

[出处:http://www.regexlab.com/zh/regtopic.htm] 引言 本文将逐步讨论一些正则表达式的使用话题.本文为本站基础篇之后的扩展,在阅读本文之前,建议先阅读正则表达式参考文档一文. 1. 表达式的递归匹配 有时候,我们需要用正则表达式来分析一个计算式中的括号配对情况.比如,使用表达式 "\( [^)]* \)" 或者 "\( .*? \)" 可以匹配一对小括号.但是如果括号 内还嵌有一层括号的话 ,如 "( ( ) )&q

perl学习之:理解贪婪匹配和最小匹配之间的区别

正则表达式的新手经常将贪婪匹配和最小匹配理解错误.默认情况下,Perl 的正则表达式是“贪婪地”,也就是说它们将尽可能多地匹配字符. 下面的脚本打印出“matched defgabcdef”,因为它尽可能多地匹配模式,直至结尾的‘g’. $data = 'abcdefgabcdefg';$data =~ /abc(.+)g/i;print "matched "; 要改变匹配特点,只须简单地在量词(加号[+]或星号[*])后面加一个问号(?)即可.在上面的程序中把模式改为在‘+’之后包含

shell 中 贪婪匹配 和 非贪婪匹配

举个栗子: v=jfedu.shiyiwen.com echo ${v%.*} 一个%为非贪婪匹配,即匹配最短结果.%从右到左进行非贪婪匹配,匹配什么呢? 匹配已 .*的字符. 那么当然是匹配到了.com 然后执行删除匹配到的字符.结果就是(这里的 "." 相当于定界符.而“*”是通配符) jfedu.shiyiwen echo ${v%%.*} 而这里执行贪婪匹配,即匹配最长结果就匹配到了 .shiyiwen.com 结果为 jfedu 这里在说一个 # 刚好和 %顺序相反而已,#是

Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配《转》

//贪婪匹配 var reg: TPerlRegEx; begin reg := TPerlRegEx.Create(nil); reg.Subject := '<html><head><title>标题</title></head><body>内容</body></html>'; reg.RegEx := '<.*>'; //将会全部匹配, 因为两头分别是: < 和 > reg.Rep

Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配

Delphi 正则表达式语法(6): 贪婪匹配与非贪婪匹配 //贪婪匹配 var   reg: TPerlRegEx; begin   reg := TPerlRegEx.Create(nil);   reg.Subject := '<html><head><title>标题</title></head><body>内容</body></html>';   reg.RegEx  := '<.*>';

javascript正则——贪婪匹配

熟悉正则的朋友都知道,正则的匹配有"贪婪"和"非贪婪"之分. "贪婪"匹配是尽可能多的匹配: 对于字符串'aaaa', /a+/匹配整个字符串,而非贪婪匹配/a+?/匹配的是整个字符串的第一个'a',因为贪婪匹配是尽可能少的匹配. -------------- 使用非贪婪匹配还有一些需要注意的地方. 考虑下面这个正则表达式:/a+b/,它匹配一个或多个a,以及一个b. 使用'aaab'作为匹配字符串时,它会匹配整个字符串. 如果我们换成/a+?b