gpt4 book ai didi

java - 给定正则表达式匹配的 boolean 变量值的结果应该是什么?

转载 作者:行者123 更新时间:2023-11-30 08:22:24 25 4
gpt4 key购买 nike

String HouseNo = "a";
boolean value = HouseNo.matches("[0-9]+[/\\-]??[A-Za-z]");

根据我的说法,这个值应该是真的,但结果却是假的。谁能解释一下为什么?

另外我尝试了正则表达式

"[0-9]+[/\\-]??[A-Za-z[0-9]+]"

匹配输入值“99-99”或“99-a”或“99-A”但不匹配“99-”但结果为假。有人也可以解释一下吗?

编辑:我得到了第一个问题的答案。实际上在Java中??相当于?如此处所示 http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html

虽然仍然找不到第二个问题的答案。有人可以帮忙吗?

最佳答案

[0-9]+ 不是有条件的

编辑

根据您的有效/无效输入,以下正则表达式可能适合您

([0-9]+[/\\-])?([A-Za-z]|[0-9]+)

这基本上是有条件地评估前面的数字加上 -/ 后跟一个字符或数字

关于java - 给定正则表达式匹配的 boolean 变量值的结果应该是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24410235/

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