我正在开发一款应用程序,通过电子邮件收到客户关于特定产品的反馈。目前我正在使用java匹配器和模式类来使用正则表达式来解析某些片段和关键字。
GIVEN:客户通过世界各地的任何电子邮件客户端(APAC除外)向我们发送电子邮件。
问:我是否需要在\\p{L}
和/或\\p{M}
前加上我的所有正则表达式,或者我可以使用左
\\Q<my regex>\\E
(用\\Q
和\\E
包裹我的正则表达式?
答案 0 :(得分:1)
你可以尝试:
Pattern.quote(yourString);
相当于\Q
\E
\Q
... \E
用于文字匹配,这意味着您需要提前知道要匹配的字符串。例如,使用\Qпривет мир\E
匹配:
привет мир
虽然使用\Q.*\E
不匹配 - 但它会匹配:
.*
因此,如果您希望匹配привет мир
或merhaba dünya
(两者)之类的字符串,您可能希望使用\p{M}*\p{L}+
之类的字符串来捕获每个字词({ {1}},привет
等)或者мир
可以捕获整个字符串\X+
。