用于解析由双引号分隔的简单句子单词的正则表达式
Regex for parsing a simple sentence words delimited by double quotes
我有一个这样的例句:
""Music"",""EDM / Electronic"",""organizer: Tiny Toons""
我想把这句话解析成token:
["Music", "EDM / Electronic", "organizer: Tiny Toons"]
我的正则表达式 foo 非常有限,而且我面临一些时间压力。
想知道是否有人可以帮助我构建一个正则表达式(与 Java8 兼容 - 因为我正在使用 Clojure 来应用正则表达式)来解析这些捕获组。
谢谢,
杰森.
假设句子是整个字符串并且没有逗号或 "
可以匹配,你可以只使用
"[^,\"]+"
如果上述假设不正确,请提供可能的输入字符串示例,并详细说明您要匹配的部分中可以出现哪些字符。
如何使用正则表达式的简单 java 示例:
String sentence = "\"\"Music\"\",\"\"EDM / Electronic\"\",\"\"organizer: Tiny Toons\"\"";
Matcher matcher = Pattern.compile("[^,\"]+").matcher(sentence);
List<String> matches = new ArrayList<String>();
while (matcher.find()) {
matches.add(matcher.group());
}
System.out.println(matches);
我有一个这样的例句:
""Music"",""EDM / Electronic"",""organizer: Tiny Toons""
我想把这句话解析成token:
["Music", "EDM / Electronic", "organizer: Tiny Toons"]
我的正则表达式 foo 非常有限,而且我面临一些时间压力。
想知道是否有人可以帮助我构建一个正则表达式(与 Java8 兼容 - 因为我正在使用 Clojure 来应用正则表达式)来解析这些捕获组。
谢谢, 杰森.
假设句子是整个字符串并且没有逗号或 "
可以匹配,你可以只使用
"[^,\"]+"
如果上述假设不正确,请提供可能的输入字符串示例,并详细说明您要匹配的部分中可以出现哪些字符。
如何使用正则表达式的简单 java 示例:
String sentence = "\"\"Music\"\",\"\"EDM / Electronic\"\",\"\"organizer: Tiny Toons\"\"";
Matcher matcher = Pattern.compile("[^,\"]+").matcher(sentence);
List<String> matches = new ArrayList<String>();
while (matcher.find()) {
matches.add(matcher.group());
}
System.out.println(matches);