Java 如何制作将行分成单词的正则表达式
请告诉我如何用正则表达式来分隔单词。 假设有一个字符串Java 如何制作将行分成单词的正则表达式,java,regex,Java,Regex,请告诉我如何用正则表达式来分隔单词。 假设有一个字符串 String s = "I have dog, cat, gold fishes. My cat eats : milk, fish, etc.." 我需要基于字符串的字符串数组 String[] words = s.split(regexp) [我,有,狗,猫,金,鱼,我的,猫,吃,牛奶,鱼等] 因此正则表达式必须忽略空格和标点符号(点、逗号、、!)这应该可以: String[] wo
String s = "I have dog, cat, gold fishes. My cat eats : milk, fish, etc.."
我需要基于字符串的字符串数组
String[] words = s.split(regexp)
[我,有,狗,猫,金,鱼,我的,猫,吃,牛奶,鱼等]
因此正则表达式必须忽略空格和标点符号(点、逗号、、!)这应该可以:
String[] words = s.split("[\\s,.:]+");
要包含所有标点符号,请使用\p{Punct}
:
String[] words = s.split("[\\s\\p{Punct}]+");
这是一项非常简单的任务,如果你阅读了关于正则表达式的基本教程,你会在两分钟内找到答案。建议:使用find方法更容易。您不需要(也不应该)在character类中转义
<代码>“[\\s,.:]+”就足够了。@Pshemo我错过了。谢谢你的提示。