正则表达式全部搜索

时间:2012-12-31 05:49:22

标签: regex vb.net

所以基本上考虑这个例子:

google123         

   apples

   doodle1234

我用过环顾四周

(?<=google123)([^\n]*\n[\s*\w+])+(?=doodle1234)

不幸的是,它只适用于

google123         

   apples

doodle1234

注意:第一个例子中无法识别空间“doodle1234”。它只识别“doodle1234”。

搜索输出必须是苹果

2 个答案:

答案 0 :(得分:0)

这里的语法错误:

[\s*\w+]

(你在字符类中包含星号。)相反:

\s*\w+

答案 1 :(得分:0)

[\s*\w+]更改为[\s*\w+]+[\s*\w+]*

说明:

  

* 的   匹配前一个元素零或 更多 次。

     

+ 的   匹配前一个元素1或 更多 次。

,您的regex可以是这样的:

(?<=google123)([^\n]*\n[\s*\w+]*)+(?=doodle1234)

或者您可以使用*?+?

  

*? 的   匹配前一个元素零次或多次,但尽可能少

     

+? 的   匹配前一个元素一次或多次,但尽可能少