在Java中使用perl正则表达式
我试图在Java中使用为Perl的正则表达式构建的正则表达式。我的目标是拥有一组标准化的正则表达式,以便我们的Java应用程序和Perl脚本在应用正则表达式时产生相同的结果
是否有一个库将接受perl正则表达式(如:\bbypa(s|r)?\b
)并直接在Java中使用它,还是需要为每个正则表达式转义特殊字符
如果我必须实现第二种方法(我希望可以避免),那么需要转义哪些字符才能在Java中运行
对这一点的任何洞察都会有所帮助
谢谢
编辑:
数据库中有500多个这样的正则表达式。它们都能在perl上完美地工作。在Java中使用这些正则表达式时,我是否只需要避开反斜杠,并假设它产生与Perl相同的结果
# 1 楼答案
你的java正则表达式是
您需要再次转义反斜杠
\
。只需将您的perl正则表达式放入这个javaregex online checker站点并单击test按钮。您将得到一个纯java正则表达式代码# 2 楼答案
可以使用该表达式,在Java中,必须对反斜杠转义序列进行双转义