繁体   English   中英

删除String中的特定char

[英]Delete a specific char in a String

我尝试解决一些String任务但我遇到了一些问题。 我不明白我如何搜索2个不同的字符并删除如果1个字符在这两个字符之间。

我的任务是:

在字符串中查找“zip”和“zap”等模式 - 长度为3,以“z”开头,以“p”结尾。 返回一个字符串,对于所有这些单词,中间字母不见了,所以“zipXzap”产生“zpXzp”。 我的代码是:

public String zipZap(String str) {
    char z = 'z';
    char p = 'p';

    for (int i = str.indexOf('z', 0); i != -1; i = str.indexOf('z', 1)) {
        for (int j = str.indexOf('p', 0); i != -1; i = str.indexOf('p', 1)) {
           if (p = i + 2) {
               str = str.replace(i + 1, " ");
           }
        }
    }

    return str;
}  

尝试这个:

public String zipZap(String str) {
    return str.replaceAll("z[a-z]p", "zp");
}

这适用于任何角色:

public static String zipZap(String str) {
    return str.replaceAll("z.p", "zp");
}

点(。)表示“任何字符”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM