[使用Java的字符串表达式匹配器

问题描述 投票:0回答:1

我正在寻找从大字符串中提取三个字符串的最佳方法。

我的字符串如下

x= " some test....  some text (some text, equipmentName: 'XXX', equipmentNumber: 'yyy', equipmentSlot: ‘zzz’) some text"

我想提取三个字符串。

String1 = "equipmentName: 'XXX'"
String2= "equipmentNumber: 'yyy'"
String3 = "equipmentSlot: ‘zzz’"

我应该使用模式匹配器还是仅使用普通的旧Java索引,等等的最后索引...

最诚挚的问候。

java string pattern-matching string-matching
1个回答
0
投票
String x= " some test.... some text (some text, equipmentName: 'XXX', equipmentNumber: 'yyy', equipmentSlot: ‘zzz’) some text"; List<String> result = new ArrayList<>(); Pattern pattern = Pattern.compile("(equipment\\w+: ['|‘]\\w+['|’])"); Matcher matcher = pattern.matcher(x); while(matcher.find()) { result.add(matcher.group()); } result.forEach(System.out::println);

输出:

equipmentName: 'XXX'
equipmentNumber: 'yyy'
equipmentSlot: ‘zzz’
© www.soinside.com 2019 - 2024. All rights reserved.