正则表达式以匹配Java中的\ a574322

348

我有一个长字符串,看起来像这样:\ c53 \ e59 \ c9 \ e28 \ c20140326 \ a4095 \ c8 \ c15 \ a546 \ c11,我需要找到以\ a开头且后跟数字的表达式。例如:\ a574322而且我不知道如何构建它。我不能使用:

Pattern p = Pattern.compile("\\a\\d*");

因为\ a是正则表达式中的特殊字符。当我尝试像这样将其分组时:

Pattern p = Pattern.compile("(\\)(a)(\\d)*");

即使括号的数量是偶数,我也会得到未封闭的组错误。你能帮我吗?

非常感谢大家的解决方案。

njzk2

您需要4 \

2表示正则表达式不是一个特殊字符,而是一个普通字符,\每个2表示Java String这些也不是特殊字符。因此,您需要通过以下方式在代码中表示它:

"\\\\a\\d*"

哪个是正则表达式 \\a\d*

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章