首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

replaceFirst的有关问题

2011-12-27 
replaceFirst的问题以下代码,Stringstr11234\\q\23 Stringstr21234\\q str1str1.replaceFirst(st

replaceFirst的问题
以下代码,
String   str1   =   "1234\\q\23 ";
String   str2   =   "1234\\q ";
str1   =   str1.replaceFirst(   str2, " ");

执行的时候为什么会出异常呢!
java.util.regex.PatternSyntaxException:   Illegal/unsupported   escape   squence   near   index   5

[解决办法]
首先str1的\23没有意义,可能你需要的是\\23
str2的正则表达式不正确,\\q没有意义不被支持,而如\\d则可以,建议看正则表达式的知识
如果你想把 "1234\\q\23 "替换为 "\23 "
把str1改为 "1234\\q\\23 "
把str2改为 "1234\\\\. "就可以

热点排行