我有一个混乱的字符串,例如:
String text= "'xhxyxhzx'xcxz" ";
我想用 empty 替换其他字符串,除了一个以'
类似的东西:
String cleartext = "";
if (text.contains("'"))
cleartext = text.replaceAll("[text.startingWith("'a-z" + "'0-9")]", "");
out.println(cleartext);
因此输出为 'h' 'e' 'll' 'o'
注意:我只是发现有可能使用替换方法进行,但是如果还有其他方法可以实现,我不介意。非常感谢!
根据我的说法,我们可以做一件事。希望您不要介意没有代码答案。
-
将字符串透过字符'将其分开,然后将其放入字符串数组中。例如字符串" h'e'll'o'"。变成h,e,ll,o,。
-
无视所有奇数索引。偶数索引中的字符串将是"字符"内部的字符串。上面的示例是" e,o"
- 输出字符串数组甚至索引或在步骤2中创建新数组。
我想您正在寻找这样的东西。
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();
}
但是,我不确定要应用的规则以获得预期的结果。例如:"'''" => "'"
?