gpt4 book ai didi

java - 简单的java正则表达式匹配和替换

转载 作者:搜寻专家 更新时间:2023-11-01 01:22:26 25 4
gpt4 key购买 nike

所以我有 myString 包含字符串

"border-bottom: solid 1px #ccc;width:8px;background:#bc0b43;float:left;height:12px"

我想使用正则表达式检查它是否包含 "width:8px"(\bwidth\s*:\s*(\d+)px)

如果为真,请将宽度值(即上例中的 8)添加到我的 myList。

尝试:

if (myString.contains("\\bwidth\\s*:\\s*(\\d+)px")) {
myList.add(valueofwidth) //unsure how to select the width value using regex
}

有什么帮助吗?

编辑:所以我研究了 contains 方法,发现它不允许正则表达式。 matches 将允许使用正则表达式,但它会查找完整的匹配项。

最佳答案

您需要使用 Matcher#find()方法。

来自文档:-

Attempts to find the next subsequence of the input sequence that matches the pattern.

然后你可以从中取出捕获的组:-

Matcher matcher = Pattern.compile("\\bwidth\\s*:\\s*(\\d+)px").matcher(myString);

if (matcher.find()) {
myList.add(matcher.group(1));
}

关于java - 简单的java正则表达式匹配和替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14040037/

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