![](/img/trans.png)
[英]How to extract a word in java after a given word in using regex in java
[英]Java Regex to extract a word from given String
我需要从给定的字符串中提取一个单词。 在这种情况下,字符串可能以不同的方式出现。 例如:
“签名引用测试ID 69043 abcd。签名引用测试ID 1001”
“签名指的是测试ID
69043磅 签名引用测试ID 1001”
“签名是指测试
ID69043。”
同样,测试ID不一定总是小写。 如果我可以忽略它是小写还是大写,那会更好。 也可能是Test ID,TEST ID
我暂时将其写为'测试ID([0-9] +)'
我想从这些给定的字符串中提取“测试ID号”。 有时它在字符串中可以有多个“测试ID号”。 一些时间字符串包含多行,因为它出现在段落中。
您可以在此处使用以下不区分大小写的模式来使用正式的Java模式匹配器:
(?i)test\s+id\s+(\d+)
考虑以下代码片段:
String input = "The Signature refers to test id 69043 abcd. ";
input += "The Signature refers to test id 1001";
String pattern = "(?i)test\\s+id\\s+(\\d+)";
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(input);
while (m.find()) {
System.out.println("Found value: " + m.group(1) );
}
这将正确输出两个id:
Found value: 69043
Found value: 1001
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.