perl正则表达式转义字符

前端之家收集整理的这篇文章主要介绍了perl正则表达式转义字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我听说perl是一个使用正则表达式的好语言,但我对需要转义的字符有点困惑

我在http://regexlib.com/RETester.aspx上测试了代码,得到了我想要的结果

//home/dev/abc/code/hello/world.cpp#1
//home/dev/((.*?)/[^/]+).*#

Match   $1  $2
//home/dev/abc/code/hello/world.cpp#    abc/code    abc

但是,我不太确定如何将其转换为perl代码

我试过了,

\/\/home\/dev\/\(\(\.\*\?\)\/\[\^\/\]\+\)\.\*\#

\/\/home\/dev\/((.*?)\/[^\/]+).*\#

两者都失败了

难道你不认为逃避使得正则表达式难以理解吗?我用错了吗?

解决方法

你可以选择使用!而不是/围绕你的正则表达式,这样你就不必转义/.
m!//home/dev/((.*?)/[^/]+).*#!

应该管用.这是它的实际应用:http://ideone.com/TDrBG

原文链接:https://www.f2er.com/Perl/172361.html

猜你在找的Perl相关文章