尝试用给定的样本解析名称
++++++++++++++++++SELIZABETH+COLLAZO+++++++++++++++++++
+++++++++++++++++++PALOMA+CORREA+++++++++++++++++++++++
+++++++++++++++++++NOAH+BLAKEMORE++++++++++++++++++++++
我已经尝试过
//++(.*?)+(.*?)//++
但这还很遥远。
想将名字和姓氏解析为两个字符串。
最佳答案
您可以使用此正则表达式 (\w+)\+(\w+)
或 \+{2,}(.*?)\+(.*?)\+{ 2,}
与这样的模式:
String str = "++++++++++++++++++SELIZABETH+COLLAZO+++++++++++++++++++\n"
+ "+++++++++++++++++++PALOMA+CORREA+++++++++++++++++++++++\n"
+ "+++++++++++++++++++NOAH+BLAKEMORE++++++++++++++++++++++";
Pattern pattern = Pattern.compile("(\\w+)\\+(\\w+)");// or instead "\\+{2,}(.*?)\\+"(.*?)\\+{2,}
Matcher matcher = pattern.matcher(str);
while (matcher.find()) {
System.out.println(matcher.group(1) + " " + matcher.group(2));
}
输出
SELIZABETH COLLAZO
PALOMA CORREA
NOAH BLAKEMORE
关于Java - 正则表达式解析字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47161076/