无法从字符串中删除单引号?

时间:2013-06-01 22:02:14

标签: java regex string replace

这是我的字符串:

String str = "CREATE TABLE `patiant` (  `ID` varchar(45) NOT NULL,  `PATIANT_NAME`...";

我尝试使用replacereplaceAll方法,但没有效果。
在这里你可以看到我尝试了什么我不知道它为什么不起作用:

  1. temp = str.replace("'","");
  2. temp = str.replaceAll("(^')","");
  3. 如何从字符串中删除所有引号?
    感谢

3 个答案:

答案 0 :(得分:2)

你的所有引号都是grave accents(`),所以你要替换错误的引用类型。所以试试这个:

temp = str.replaceAll("`","");

答案 1 :(得分:1)

输入String包含反引号而不是单引号,因此需要替换而不是后者:

无论

temp = str.replace("`", "");

temp = str.replaceAll("`", "");

将正确执行更换

答案 2 :(得分:0)

这里是代码,所以你现在可以证明:


public class TestMain {

public TestMain() {
    // TODO Auto-generated constructor stub
}


public static void main(String[] args) {

    String str = "CREATE TABLE `patiant` (  `ID` varchar(45) NOT NULL,  `PATIANT_NAME`...";
    String new_string_remplace = str.replaceAll("`",""); 
    System.out.println(new_string_remplace);
    //RESULT: CREATE TABLE patiant (  ID varchar(45) NOT NULL,  PATIANT_NAME...

}

}

注意:替换String java.lang.String.replaceAll(String regex,String replacement)。

将此字符串中与给定正则表达式匹配的每个子字符串替换为给定的替换。

调用str.replaceAll(regex,repl)形式的此方法会产生与表达式

完全相同的结果