我解析了以下段落:
<group start="372" name="Russia" max-len="11" regex="^\d{8}$" curnpay="RUR" capacity="false" inccode="true">
String regExpValue = parser.getAttributeValue(null, GROUP_TAG_ATT_REGEXP);
结果我得到regExpValue = "^d{8}$"
,其中“\”消失了。有什么问题?
答案 0 :(得分:0)
您需要在Java中进行双重转义。因为Java不知道像rawstrings这样的东西,并且首先处理字符串并且执行所有转义序列。由于\d
不是字符串转义序列,因此只删除反斜杠。
所以试试:
<group start="372" name="Russia" max-len="11" regex="^\\d{8}$" curnpay="RUR" capacity="false" inccode="true">