我有一个文件需要用ruby正则表达式替换
文件内容如下
AAAAAAAAAAAAAAAAAAA
*/
BBBBBBBBBBBBBBBBBBBBBB
*/
为什么在多行模式下,用AAAAAAAAAAAAAA.*\*\/ 匹配到的是全部而不是
AAAAAAAAAAAAAAAAAAA
*/
我要如何做才能匹配到?
我使用了很多换行的匹配\n \Z $ 都没有达到目的
难道多行模式下,不能匹配换行符吗?
这样就行了:
s=
'AAAAAAAAAAAAAAAAAAA
*/
BBBBBBBBBBBBBBBBBBBBBB
*/
'
irb(main):015:0> s.match(/A+.+?*\//m)[0]
=> "AAAAAAAAAAAAAAAAAAA\n */"
或者你的 AAAAAAAAAAAAAA.**\/ 改成 AAAAAAAAAAAAAA.*?*\/
其实是 .* 和 .*? 的区别