JAVA程序中Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )问题的解决
2016-11-28 10:33
459 查看
我在匹配汉字字符串时用到该串(<span[^>]*?title='([0-9]*[\s|\S]*[u4E00-u9FA5]*)'[\s|\S]*class='[a-z]*[\s|\S]*[a-z]*[0-9]*'),不过该串报错,查了一下,发现在Java中有反义字
符的说法,"\" 被解释为Unicode 转义或其他字符转义。所以必须在字符串字面值中使用两个反斜线, 表示正则表达式受到保护,才不会被 Java 字节码编译器解释。
即是说把字符匹配串里的所有的单反斜杠(\)换成双反斜杠(\\)就行了。我更改后(<span[^>]*?title='([0-9]*[\\s|\\S]*[u4E00-u9FA5]*)'[\\s|\\S]*class='[a-z]*[\\s|\\S]*[a-z]*[0-9]*')就没错了。
符的说法,"\" 被解释为Unicode 转义或其他字符转义。所以必须在字符串字面值中使用两个反斜线, 表示正则表达式受到保护,才不会被 Java 字节码编译器解释。
即是说把字符匹配串里的所有的单反斜杠(\)换成双反斜杠(\\)就行了。我更改后(<span[^>]*?title='([0-9]*[\\s|\\S]*[u4E00-u9FA5]*)'[\\s|\\S]*class='[a-z]*[\\s|\\S]*[a-z]*[0-9]*')就没错了。
相关文章推荐
- 关于JCreator在编译程序时出现的"Error:Invalid path"问题的解决方法
- Java出现错误“Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )”的问题分析
- Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )问题解决
- 用anjuta编译gtk程序时出现类似与"main.c::10:21:gtk/gtk.h:没有那个文件和目录"问题的解决
- "无法在web服务器上启动调试,不具备调试此程序的权限" 问题解决
- Java程序中遇到的乱码问题以及解决方法
- 【转】C++编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决
- 解决java中无法在replaceAll替换"+"的问题
- C++编译过程中"没有找到MFC80UD.DLL,因此这个程序未能启动.重新安装应用程序可能会修复此问题"? 的彻底解决
- 问题解决:javax.servlet.jsp.el.ELException: The "." operator was supplied with an index value of type "java.lang.String" to be applie
- Java程序占用cpu99%的问题解决
- The Folder Path "XXXX" Contains an Invalid Character 问题的另一个解决办法
- 解决在url中传递js变量到java程序中出现乱码问题(转自http://www.blogjava.net/fine)
- DOS程序显示"Invalid keyboard code specified"的解决办法
- java程序解决中文乱码问题
- 解决 Java 程序的乱码问题
- "Java , Installanywhere 在 Redhat 上的中文问题解决方法 "
- 解决 Java 程序的乱码问题
- "注册表启动项加载程序"问题的解决方法
- 解决安装sqlServer2000提示 "以前的某个程序安装已经在计算机上创建挂起的文件操作,必须重启计算机"问题