首页 > 解决方案 > 删除括号,双引号,并可能在 java 中使用 string.replaceall 添加空格

问题描述

我看到多个线程回答有关如何替换/删除单引号('),双引号(“),括号([,{),逗号等。虽然我能够成功删除它们,但我想了解更多.例如,string.replaceAll("\p{P}",""); 可以删除标点符号。我对这种语法感到困惑; "\p{P}","" 如何等于标点符号?

我有一个字符串,我想删除括号、双引号,并可能添加空格。如下所示,我想使用 replaceAll 将我的字符串从 category 更改为 updatedCategory。

String category = "["restaurant","bar","burger joint"]";
String updatedCategory = "restaurant, bar, burger joint";

标签: javaandroidstringreplace

解决方案


您需要了解正则表达式,对于您的问题,您可以像这样使用replaceAll这个正则表达式["\[ \]]

category.replaceAll("[\"\\[ \\]]", "")

输出将是:

restaurant,bar,burgerjoint

所以要得到同样的结果updatedCategory,只需使用:

category.replaceAll("[\"\\[ \\]]", "")
    .replace(",", ", ")

推荐阅读