2014-01-14 66 views
0

我需要在一行或任意逗号,点中跳过多个@正则表达式匹配重复的一个字符或单个字符

例子:

无效:[email protected]@testtest,test[email protected],st[email protected],st

有效期:[email protected][email protected]@st

下一个模式不正是我想要什么(它检查线路是否包含@@,.所以结果是true/false):

/(@)\1+|[,.]/ 

但我不喜欢|在这里签字。

我该如何修复它才能使用[]只?还是有另一种方法来做到这一点?

+0

如果重复什么,已经被删除?我无法理解模式 – thefourtheye

+1

你不能这样做,因为你需要'交替'来实现你想要的东西,但是我会像'@ {2,} | [,。]'那样写下来,忘记捕获组 – gwillie

+0

@thefourtheye我已经更新了这个问题。这是真的/错误的检查。 – soborskyi

回答

0

我不喜欢|在这里签字。我如何解决它只能使用[]

你不行。如果您想为@和其他字符使用不同的模式,使用|是唯一的方法。

你可以简化你的表达一下。例如:

@@+|[,.] 
+0

为什么选择投票? – Qtax

相关问题