replaceAll方法的第一个方式正则表示,我想把一个字符串中的{http://www.w3.org/2001/XMLSchema}替换成xs:
但是报错了,说是{http://www.w3.org/2001/XMLSchema}这个不是合法的正则表达式,请问大家应该如何写呢?

解决方案 »

  1.   

    str = str.replace("{http://www.w3.org/2001/XMLSchema}", "xs");
      

  2.   


    str.replaceAll("\{http\://www\.w3\.org/2001/XMLSchema\}", "xs:")
      

  3.   

    str.replaceAll("\\{http\\://www\\.w3\\.org/2001/XMLSchema\\}", "xs:")
    傻了我
      

  4.   

    遇到这种问题我通常都是通过加转意符来解决的,其实我也记不清哪些是要转意的,但是试几次马上就成功了
    貌似replace底层是用正则表达式实现的所以才会出现这种情况啊
      

  5.   

    哎,这种替换根本就不需要用到正则表达式请仔细地看一下 replace 方法和 replaceAll 方法的区别!