gpt4 book ai didi

Java 正则表达式 : How to detect the index of not mached char in a complex regex

转载 作者:行者123 更新时间:2023-12-02 05:12:04 24 4
gpt4 key购买 nike

我正在使用正则表达式来控制输入,我想获取错误字符的确切索引。

我的正则表达式是:

^[A-Z]{1,4}(/[1-2][0-9][0-9][0-9][0-1][0-9])?

如果我输入以下内容:

DATE/201A08

然后macher.group()(使用lookingAt()方法)将返回“DATE”而不是“DATE/201”。那么,我就无法知道错误的索引是9。

最佳答案

如果我没看错的话,你不能只使用一个正则表达式来做到这一点。^[A-Z]{1,4}(/[1-2][0-9][0-9][0-9][0-1][0-9])?假定字符串以 1 到 4 个字符开头,后跟任何内容,或者后跟/和正好 6 个数字。因此它会正确地将您的输入解析为“DATE”,因为根据您的正则表达式它是有效的。

尝试将其分为两项检查。首先检查它是否是有效的日期然后,如果存在实际的/部分,请根据非可选模式检查它。

关于Java 正则表达式 : How to detect the index of not mached char in a complex regex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27249016/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com