我需要创建正则表达式规则以匹配字符串与不包含.
/
-
字符的字符串以及多次使用它们但不在其附近的字符串。
好的字符串(应该匹配):
aaa/aa/aa
a/a.a
c.a
aaa-zz.z-ee/aa.z
错误的字符串(不应该匹配):
aaa/aa/
z.zz//aa
zz..aa
fff//aa-a
zzzzz/
.
/
-
-aa
/aaa.
aasa....a
尝试并创建了像^[^\.\/\-\n]*(?:[\.\/\-])(?![\.\/\-])[^\.\/\-\n]*$
这样的某些东西,但它也找到了.aaa
。
答案 0 :(得分:3)
您可以使用
/^(?!.*[./-]{2,})(?![./-])(?!.*[./-]$).*$/
(?!.*[./-]{2,})
预测要检查没有两个连续的邪恶角色(?![./-])
前瞻检查开始旁边是否有邪恶的字符(?!.*[./-]$)
前瞻检查结尾旁边是否有邪恶角色.*$
匹配整个字符串(不一定需要),如果不允许空字符串,则更改为.+