JAVA替换所有以'开头的字符串除外

我有一个混乱的字符串,例如:


String text= "'xhxyxhzx'xcxz" ";


我想用空替换所有其他字符串,除了以'


像这样的东西:


String cleartext = ""; 

if (text.contains("'"))

        cleartext = text.replaceAll("[text.startingWith("'a-z" + "'0-9")]", "");        

         out.println(cleartext);

所以输出是'h' 'e' 'll' 'o'


注意:我刚刚发现使用 replace 方法可以做到这一点,但如果有其他方法可以实现,我不介意。非常感谢!


达令说
浏览 165回答 2
2回答

人到中年有点甜

在我看来,我们可以做一件事。我希望你不介意无代码答案。通过字符 ' 拆分字符串并将其放入字符串数组中。例如字符串“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();}但是,我不太确定您要应用哪些规则以获得预期结果。例如:"'''" => "'"?
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java