多线正则表达式匹配

时间:2011-06-17 11:39:17

标签: regex

举个例子:

  

猫坐在上面   垫子和狗   

无法取代他的位置      火灾面前。

我有一个表达式匹配两个字符串之间的字符串,并返回之间的内容:

put "(?<=\The cat)(.*)(?=\the)" into myreg

返回:猫坐在

我如何扩展它以匹配多行...? 要从代码中获取此信息:

put "(?<=\The cat)(.*)(?=\fire)" into myreg

所以我想:

猫坐在上面 垫子和狗 无法得到他的位置

的前面

1 个答案:

答案 0 :(得分:2)

正则表达式中的.将匹配除新行之外的任何内容。有一个修饰符(具体取决于平台)使其成为多行。它通常是smn之一。

或者,将(。*)替换为:

((?:.|\s)*)