【发布时间】:2015-03-01 03:40:47
【问题描述】:
我想沿空格分割一个字符串,如果它们包含在单引号内,则忽略空格,如果它们被转义(即 \' ),则忽略单引号 我从another question 完成了以下工作。
String s = "Some message I want to split 'but keeping this a\'s a single string' Voila!";
for (String a : s.split(" (?=([^\']*\'[^\"]*\')*[^\']*$)")) {
System.out.println(a);
}
上面代码的输出是
Some
message
I
want
to
split
'but
keeping
this
'a's a single string'
Voila!
但是,如果单引号被转义( \' ),我需要忽略它们,而上面没有这样做。此外,我需要删除第一个和最后一个单引号和正斜杠,当且仅当它(正斜杠)正在转义单引号('this is a \'string' 将变为 this is a 'string)。我不知道如何使用正则表达式。我将如何做到这一点?
【问题讨论】: