我想匹配行看起来像这样如何匹配一个新行perl的
(white space)ERROR(some text)(new line)
(some text)
我曾尝试是这样的正则表达式,而不是工作
if (/\sERROR(.*)(\n.*)/){
}
我想匹配行看起来像这样如何匹配一个新行perl的
(white space)ERROR(some text)(new line)
(some text)
我曾尝试是这样的正则表达式,而不是工作
if (/\sERROR(.*)(\n.*)/){
}
打印$_
之前if
。
你确定你的字符串,其单空白开始?如果不是,则需要\s*
而不是\s
。
嵌入换行符很少见,你确定你确实在那里有吗?如果是,则在最后的/
后需要s
修饰符。
如果一切都失败,请阅读the manual。
Hi @sds是的,它是在字符串开头的单个空间,是的他们嵌入换行符。 – TheBlackCorsair
@TheBlackCorsair:那么你需要'''在最后一个'/' – sds
之后工作,谢谢你的帮助@sds – TheBlackCorsair
使用/s
修改:/\sERROR(.*)(\n.*)/s
。并注意您的贪心(.*)
。
换行符终止一行,您匹配的是一个__string__,它由两个__lines__组成。 – sds