java-从字符串中删除半冒号(如果字符串以字符串结尾)

我有一个要求,如果字符串的末尾存在分号(仅在末尾),则需要删除分号。我尝试了以下代码。但是仍然没有被替换。谁能在行号中告诉我以下代码中需要更改的内容

(我从这里引用了代码。如何从Java中的特定String中删除特定字符?)

public static void main(String[] args) {

String text = "wherabouts;";

System.out.println("SSS "+text.substring(text.length()-1));

if(text.substring(text.length()-1) == ";"){

text.replaceAll(";", "");

}

System.out.println("TEXT : "+text);

}

回答:

text.replaceAll(“;”, “”);

由于Java中的字符串是不可变的,因此replaceALl()method不会进行就地替换,而是会返回新的修改后的字符串。因此,您需要将返回值存储在其他字符串中。另外,要在末尾匹配

分号 ,则需要在$后面使用量词;

text = text.replaceAll(";$", "");

$表示字符串的结尾,因为您要替换最后一个semi-colon..

如果不使用$,它将替换;字符串中的所有字符串。

或者,如果您要删除最后一个,则可以简单地使用它;

    if (text.endsWith(";")) {

text = text.substring(0, text.length() - 1);

System.out.println(text);

}

:并且,如果最后还有更多分号:

text = text.replaceAll(";+$", "");

以上是 java-从字符串中删除半冒号(如果字符串以字符串结尾) 的全部内容, 来源链接: utcz.com/qa/424185.html

回到顶部