Java 带有连字符分隔内容的正则表达式
我如何删除此电子邮件地址 t-i-f-f-@-y-a-h-o-o--c-o-m 我基本上需要忽略每个连字符;我写的如下:Java 带有连字符分隔内容的正则表达式,java,regex,Java,Regex,我如何删除此电子邮件地址 t-i-f-f-@-y-a-h-o-o--c-o-m 我基本上需要忽略每个连字符;我写的如下: (?:[\\w\\.]-?)+)@-((?:[\\w\\.]-?)+)\\.-((?:[\\w\\.]-?){3}) 但是,上面的内容并没有识别出任何东西 如果没有连字符,我知道以下代码可以工作: ([\\w\\.]+)@([\\w\\.]+).([\\w]{3}) 这正好匹配它,您可能需要单独剥离“-” # "(?:-*[\\w.])+-*@(?:-*[\\w.])
(?:[\\w\\.]-?)+)@-((?:[\\w\\.]-?)+)\\.-((?:[\\w\\.]-?){3})
但是,上面的内容并没有识别出任何东西
如果没有连字符,我知道以下代码可以工作:
([\\w\\.]+)@([\\w\\.]+).([\\w]{3})
这正好匹配它,您可能需要单独剥离“-”
# "(?:-*[\\w.])+-*@(?:-*[\\w.])+-*\\.(?:-*[\\w]){3}"
(?: -* [\w.] )+
-* @
(?: -* [\w.] )+
-* \.
(?: -* [\w] ){3}
你可以用铅笔把连字符去掉
为什么不在匹配之前删除所有
'-'
?或者匹配所有不是-
的内容?With:[^-]+
正则表达式不正确(?:[\w\.]-?)+)
String strippedEmail = email.replace("-", "");