从字符串中删除指定的字符

Kyl*_*e J 1 java string

我有兴趣使用String.replaceAll允许我删除String的特定序列的函数.

  1. String.replaceAll替换第一次出现的String序列的功能是否更换?我的假设是肯定的.

  2. 要替换特定的子字符串,我如何替换提供的字符串中的字符?

    String sentence = "@red@@blue@@green@Hello@reset@";
    
    Run Code Online (Sandbox Code Playgroud)

    我想要删除的子字符串是从@另一个@,在这种情况下,在运行时String.replace

    String.replaceAll("@**PATTERN HERE SO NAME WON"T MATTER**@", "");
    
    Run Code Online (Sandbox Code Playgroud)

编辑看到替换和替换所有,因为在两个差异之间,使用正则表达式.我担心的是删除第一次出现的表达式,作为原始字符串

String sentence = "@red@@blue@@green@Hello@reset@";
Run Code Online (Sandbox Code Playgroud)

必须运行4次才能将"Hello"作为String的剩余成员.

示例:运行1 - replaceFirstOccurence("@ regex @","");

System.out.println(sentence); --> "@blue@@green@Hello@reset@"
Run Code Online (Sandbox Code Playgroud)

运行2 - replaceFirstOccurence("@ regex @","");

System.out.println(sentence); --> "@green@Hello@reset@"
Run Code Online (Sandbox Code Playgroud)

运行3 - replaceFirstOccurence("@ regex @","");

System.out.println(sentence); --> "Hello@reset@"
Run Code Online (Sandbox Code Playgroud)

运行4 - replaceFirstOccurence("@ regex @","");

System.out.println(sentence); --> "Hello"
Run Code Online (Sandbox Code Playgroud)

wax*_*tah 5

使用String的allart方法replaceAll(String regularExpression,String replacement)

例如:"@ some chars @".replaceAll("@ [^ @]*@","@@");