【发布时间】:2015-07-29 20:52:57
【问题描述】:
我有一个字符串 "'GLO', FLO" 现在,我想要一个 regex 表达式来检查字符串中的每个单词,如果:
-word 以单引号开头和结尾,用空格替换单引号
- 如果单词之间有逗号,则使用空格分隔两个单词。
所以,最后我应该得到GLO FLO。
关于如何在字符串上使用replaceAll() 方法的任何帮助?
这个正则表达式不是为我做的:"'([^' ]+)|\\s+'"
public static void displaySplitString(final String str) {
String pattern1 = "^'?(\\w+)'?,\\s+(\\w+)$";
StringTokenizer strTok = new StringTokenizer(str, " , ");
while (strTok.hasMoreTokens()) {
String delim = (strTok.nextToken());
delim.replaceAll(pattern1, "$1$2");
System.out.println(delim);
}
} //in main method displaySplitString("'GLO', FLO");
【问题讨论】:
-
split与替换不同 -
@shA.t 抱歉,它没有这样做。
-
this example code 怎么样?它对你有用吗?
-
所以试试这个
/.*?([^',]*\w)/g和\1;)。 -
@stribizhev 我得到了这个:'GLO' FLO 和你的代码。我应该得到这个:GLO FLO