gpt4 book ai didi

java - 如何在 Java 中从 String 中获取多个子串加上额外的数字?

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

假设我们有以下字符串:

(form_component_34=="Yes"||case_attribute_37==3&&case_attribute_40?has_content)

我想做的就是获取它的操作数:

  • form_component_34
  • case_attribute_37
  • case_attribute_40

它们总是以字符串“form_component_”或“case_attribute_”开头,后面会有一个数字(作为 ID)。我想我应该使用正则表达式。

谁能帮帮我吗?

最佳答案

您可以使用以下正则表达式:

(?:form_component_|case_attribute_)\\d+

Java代码:

String str = "(form_component_34==\"Yes\"||case_attribute_37==3&&case_attribute_40?has_content)";
Pattern r = Pattern.compile("(?:form_component_|case_attribute_)\\d+");
ArrayList<String> matches = new ArrayList<String>();
Matcher m = r.matcher(str);
while (m.find())
{
matches.add(m.group());
}
System.out.println(matches);

输出:

[form_component_34, case_attribute_37, case_attribute_40]

参见 Ideone DEMO

关于java - 如何在 Java 中从 String 中获取多个子串加上额外的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30456015/

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