gpt4 book ai didi

java - 正则表达式:提取字符串 中的值?

转载 作者:行者123 更新时间:2023-12-01 12:05:51 26 4
gpt4 key购买 nike

如果我想从下面的字符串中提取值,正确的正则表达式(我可以在 Java 中使用)是什么?

<Name_id = bob>

我知道\<(.*?)\>将提取尖括号之间的所有内容,但我只需要提取“bob”。

字符串中唯一会改变的部分是“bob”。我还想确保如果有人输入 =bob作为 Name_id,拉出的字符串就是这样,不会弄乱正则表达式。

最佳答案

使用捕获组来捕获您想要的字符。

"<Name_id\\s+=\\s+([^>]+)>"

或者

"<Name_id\\s+=\\s+([\w]+)>"

最后打印组索引1。 \s+ 匹配一个或多个空格字符,\w+ 匹配一个或多个单词字符。

String i = "<Name_id = bob>";
Matcher m = Pattern.compile("<Name_id\\s+=\\s+([^>]+)>").matcher(i);
while(m.find())
{
System.out.println(m.group(1));
}

输出:

bob

关于java - 正则表达式:提取字符串 <Name_id = bob> 中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27607319/

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