一个正则表达式

对java有感觉 2011-12-02 01:26:03
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*([,;]\s*\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)*
我加了一个双影号就报错
谁能解决下
小弟我对正则一项不通
...全文
98 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
shine333 2011-12-02
  • 打赏
  • 举报
回复
报错不是正则问题。
因为\在java等C系列语言(C/C++/C#/Java/JavaScript)的字符串中间,有特殊含义,是转义符,和他后面的一个字符连在一起,才表示一个特殊字符。
比如"\t",表示一个制表符,"\n"表示新行,等等
而\在字符串中,就是\\
也就是说,你的代码需要

String regex = "\\w+([-+.]\\w+............";


如果你使用的是较高版本的Eclipse,在Window > Preferences里面,找到Java > Editor > Typing,
对"Escape text when pasting into a string literal"打勾

然后,复制原来的文本\w+([-+.]\w+).....。粘贴到
String regex = ""; 
双引号中间,Eclipse自动会将其中的\转义。
当然,没有仔细看你的正则本身。

23,407

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧