为了账号安全,请及时绑定邮箱和手机立即绑定

需要在正则表达式中转义的所有特殊字符的列表

/ 猿问

需要在正则表达式中转义的所有特殊字符的列表

慕仰8121524 2019-08-12 18:37:45

需要在正则表达式中转义的所有特殊字符的列表

我正在尝试创建一个与消息模板匹配的应用程序以及用户尝试发送的消息。我正在使用Java正则表达式来匹配消息。模板/消息可能包含特殊字符。

为了让我的正则表达式在最大可能情况下工作和匹配,我如何获得需要转义的特殊字符的完整列表?

是否有一个通用的解决方案来逃避Java正则表达式中的所有特殊字符?


查看完整描述

3 回答

?
明月笑刀无情

您可以查看Pattern类的javadoc:http//docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html

如果你想要常规字符而不是特殊含义,你需要转义那里列出的任何字符。

作为一个可能更简单的解决方案,您可以将模板放在\ Q和\ E之间 - 它们之间的所有内容都被视为转义。


查看完整回答
反对 回复 2019-08-12
?
慕的地2183247
  • 必须在正则表达式中转义的Java字符是:
    \.[]{}()<>*+-=!?^$|

  • 两个关闭支架(]})只需在打开相同类型的支架后进行转义即可。

  • []-brackets中,某些角色(如+-)有时会在没有逃脱的情况下工作。


查看完整回答
反对 回复 2019-08-12
?
MM们

要逃避,你可以从Java 1.5中使用它:

Pattern.quote("$test");

你会匹配这个词 $test


查看完整回答
反对 回复 2019-08-12

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信