我试图创建一个应用程序,将一个消息模板与用户试图发送的消息相匹配。我正在使用Java regex来匹配信息。模板/消息可能包含特殊字符。
我如何获得需要转义的特殊字符的完整列表,以使我的regex在最大可能的情况下工作和匹配?
是否有一个通用的解决方案来转义Java regex中的所有特殊字符?
你可以看一下Pattern类的javadoc:http://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html
如果你想要普通的字符而不是特殊含义的字符,你需要转义那里列出的任何字符。
作为一个可能更简单的解决方案,你可以把模板放在 \Q 和 \E 之间--它们之间的一切都被认为是转义的。