我有一个混乱的字符串,如:
String text= "2018-11-22 08:30:21,311: 'h' 2018-11-22 08:30:21,312: 'e' 2018-11-22 08:30:21,313: 'll' 2018-11-22 08:30:21,314: 'o' ";
,我想用 empty 替换所有其他字符串,但以'
类似这样的东西:
String cleartext = "";
if (text.contains("'"))
cleartext = text.replaceAll("[text.startingWith("'a-z" + "'0-9")]", "");
out.println(cleartext);
所以输出为'h' 'e' 'll' 'o'
注意:我只是发现可以用replace方法来实现它,但是如果有其他方法可以实现,我不介意。 非常感谢!
答案 0 :(得分:3)
我可以做一件事。希望您不介意没有代码的答案。
通过字符'分割字符串,并将其放入字符串数组。例如,字符串“ h'e'll'o'”。变成h,e,ll,o,。
忽略所有奇数索引。偶数索引中的字符串将是'字符内的字符串。上面的例子是“ e,o”
答案 1 :(得分:0)
我认为您正在寻找类似的东西。
Pattern pattern = Pattern.compile("'[a-z0-9]+'");
private String function(final String input) {
final Matcher matcher = pattern.matcher(input);
final StringBuilder sb = new StringBuilder();
while (matcher.find()) {
if (sb.length() > 0) {
sb.append(" ");
}
sb.append(matcher.group());
}
return sb.toString();
}
但是,我不确定您要应用以获得预期结果的规则。例如:"'''" => "'"
?