Java括号替换为空字符串

标签 java string replace

为什么第一行没有用空字符串替换“(”,而第二行呢?

 public static void main(String []args){
     String a="This(rab)(bar)";
     a=a.replace("\\(",""); //First
     String b=a.replaceFirst("\\(","");//Second
    System.out.println(a + " "+b);
 }

最佳答案

replace之间是有区别的和 replaceFirst .如果您的 IDE 向您显示方法签名,您将看到:

enter image description here

看看 replace 如何接受普通的旧 targetreplaceFirst 如何接受 regex

"\\(" 是一个 regex,意思是“一个左括号”。replace 不会处理您传递的字符串in 作为正则表达式。它只会尝试查找一个反斜杠后跟一个左括号,这在您的字符串中不存在。

如果要使用替换,只需使用"("即可。

关于Java括号替换为空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55086135/

相关文章:

java - 如何防止页面刷新时执行命令按钮中的操作?

javascript - 在 JavaScript 中创建无冗余的搜索字符串数组

c++ - 反向字符串错误?

php - 尝试插入负数时 drupal db_query 不起作用

java - 在 jtable 中显示数据库

java - 将 Base64 图像与 InputStream 进行比较

java - 需要将音频 byte[] 编码为要通过 JSON 传输的字符串。将从 C# 编码并发送,并在 Java 中读取为音频字节

python - “str”对象不支持项目分配

iphone - 替换出现的 NSString - iPhone

replace - 崇高文本 : interactive confirm for replace?