匹配模式java和grep字符串
我有一根绳子匹配模式java和grep字符串,java,android,regex,pattern-matching,Java,Android,Regex,Pattern Matching,我有一根绳子 NAME: Colin AGE:20 EMAIL;TYPE=PREF,INTERNET:colin@gmail.com 我想在:pattern之后提取字符串。 我想要的输出是 Colin 20 colin@gmail.com 怎么做?尝试替换^NAME:([\.\w]+)AGE:(\d+)电子邮件;TYPE=PREF,INTERNET:([@\.\w]+)$带有\1\n\2\n\3这应该可以工作 :\s*([^\s]+) 即使您的值中有多个单词,例如名称:Colin Jon
NAME: Colin AGE:20 EMAIL;TYPE=PREF,INTERNET:colin@gmail.com
我想在:pattern之后提取字符串。
我想要的输出是
Colin
20
colin@gmail.com
怎么做?尝试替换
^NAME:([\.\w]+)AGE:(\d+)电子邮件;TYPE=PREF,INTERNET:([@\.\w]+)$
带有\1\n\2\n\3
这应该可以工作
:\s*([^\s]+)
即使您的值中有多个单词,例如
名称:Colin Jones
,此方法也会起作用
String str = "NAME: Colin Jones AGE:20 EMAIL;TYPE=PREF,INTERNET:colin@gmail.com";
str = str.replaceAll("([\\w,=;]+?):", "##DELIMITER##");
for( String value : str.split("##DELIMITER##") )
System.out.println(value.trim());
要深入解释模式,查看匹配的外观(并在将来需要时进行调整),请查看
请注意,在Java中,需要两次转义特殊字符,即在regex101.com上使用\w
时,需要在代码中使用\\w