gpt4 book ai didi

java - 尝试使用正则表达式查找出现的数字后跟逗号

转载 作者:行者123 更新时间:2023-12-02 10:46:20 27 4
gpt4 key购买 nike

这是我尝试使用正则表达式验证的字符串:var mString = "14 90,"。我想检查字符串是否包含一组数字后跟逗号,在本例中 90,

我有这个正则表达式模式:

var pattern: Pattern = Pattern.compile(".*/([0-9]+,)+/g.*")

但是在评估字符串时它返回 false:

if(pattern.matcher(mString).find()){
//found it!
}

我做错了什么?

最佳答案

您的 ".*/([0-9]+,)+/g.*" 是一个“被破坏的”、损坏的模式,因为您包含了 .*//g.* 错误。重点是在字符串内的任何位置查找 [0-9]+, (甚至 [0-9],)。

您可以使用 [0-9], 等模式,并使用 Kotlin contains()方法或 Java 的 Matcher#find() 通过将正则表达式传递给方法:

var mString = "14 90,"
var pattern = "[0-9]+,".toRegex()
if(mString.contains(pattern)){
println("Valid")
}

参见Kotlin demo

这里,pattern 被实例化为 Regex 类的实例,并且 regex 对象被传递给 contains 方法。

Java 代码:

if (Pattern.compile("[0-9],").matcher(s).find()) {
System.out.println("Matched");
}

关于java - 尝试使用正则表达式查找出现的数字后跟逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52544824/

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