我正在使用正则表达式来匹配模式是否匹配,但我也想知道它何时失败。
例如,假设我有一个模式“N{1,3}Y”。我将它与字符串“NNNNY”进行匹配。我想知道失败是因为N太多了。或者,如果我将其与字符串“XNNY”进行匹配,我想知道它失败是因为字符串中存在无效字符“X”。
从 Java 正则表达式包 API (java.util.regex) 来看,只有当匹配成功时,附加信息似乎才可以从 Matcher 类中获得。
有办法解决这个问题吗?或者在这种情况下正则表达式甚至是一个选项?
我想你应该使用解析器,而不是简单的正则表达式。
正则表达式可以很好地提供字符串匹配项,但在提供非匹配项方面则不然,更不用说解释匹配失败的原因了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)