我正在尝试使用下面的代码在java中使用正则表达式从下面的字符串中提取“d320” n-我们; micromax d320 构建/kot49h)
String m = "n-us; micromax d320 build/kot49h) ";
String pattern = "micromax (.*)(\\d\\D)(.*) ";
Pattern r = Pattern.compile(pattern);
Matcher m1 = r.matcher(m);
if (m1.find()) {
System.out.println(m1.group(1));
}
但它给我的输出为“d320 build/kot4”,我只想要 d320
最佳答案
尝试像这样使用 micromax\\s(.*?)\\s
:
String m = "n-us; micromax d320 build/kot49h) ";
String pattern = "micromax\\s(.*?)\\s";
Pattern r = Pattern.compile(pattern);
Matcher m1 = r.matcher(m);
if (m1.find()) {
System.out.println(m1.group(1));
}
输出:
d320
关于java - 空格前第一个字符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35402414/