97
我注意到了標準的正則表達式的語法多行匹配是使用/秒,就像這樣:多行正則表達式的支持
This is\nsome text
/This.*text/s
此作品在Perl例如但似乎並沒有被Vim支持。相反,我必須要更加具體:
/This[^\r\n]*[\r\n]*text/
我找不到任何理由爲什麼這應該是,所以我想我可能只是錯過了VIM幫助中的相關位。
任何人都可以確認這種行爲嗎?
我注意到了標準的正則表達式的語法多行匹配是使用/秒,就像這樣:多行正則表達式的支持
This is\nsome text
/This.*text/s
此作品在Perl例如但似乎並沒有被Vim支持。相反,我必須要更加具體:
/This[^\r\n]*[\r\n]*text/
我找不到任何理由爲什麼這應該是,所以我想我可能只是錯過了VIM幫助中的相關位。
任何人都可以確認這種行爲嗎?
是的,Perl的//s
修飾符在Vim正則表達式中不可用。有關詳細信息和Vim和Perl正則表達式之間的其他差異列表,請參見:h perl-patterns
。
相反,您可以使用\_.
,這意味着「匹配任何單個字符,包括換行符」。這比你有的短一點。見:h /\_.
。
/This\_.*text/
http://blog.vinceliu.com/2007/12/regular-expression-matching-more-than.html – 2010-01-15 07:55:16