gpt4 book ai didi

java - 如果字符串以分号结尾,则从字符串中删除分号

转载 作者:太空狗 更新时间:2023-10-29 22:42:02 25 4
gpt4 key购买 nike

我有一个要求,如果分号出现在字符串的末尾(仅在末尾),我需要删除它。我尝试了以下代码。但它仍然没有被取代。任何人都可以告诉我需要在行号中的以下代码中更改什么
(我从这里引用了代码 How do I delete specific characters from a particular String in Java? )

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() 方法不执行就地替换,而是返回一个新的修改后的字符串。因此,您需要将返回值存储在其他一些字符串中。此外,要匹配末尾的分号,您需要在;

之后使用 $ 量词
text = text.replaceAll(";$", "");

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

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

或者,对于您的工作,如果您想删除最后一个 ;,您可以简单地使用它:

    if (text.endsWith(";")) {
text = text.substring(0, text.length() - 1);
System.out.println(text);
}

更新:并且,如果末尾有更多分号:

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

关于java - 如果字符串以分号结尾,则从字符串中删除分号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12806187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com