我正在尝试制作一个接受此内容的正则表达式:
- 仅限 a-z、0-9、_ 字符,最小长度为 3
- admin、static、my 和 www 被拒绝。
对于第一部分,我已经设法做到了:
^[a-zA-Z0-9\\_]{3,}$
但我不知道如何排除前面列出的单词。
例如,这意味着:
-
static是不允许的(当然),但是
-
statice被允许
-
estatic被允许
使用这个正则表达式:
^(?!static|my|admin|www).*$
效果不佳:它排除了 statice (以及未经授权的单词之后的所有内容)。
您知道哪种正则表达式可以满足我的需要吗?
尝试这样的事情:
^(?!static$|my$|admin$|www$).*$
这将不允许“static”,但允许“statice”、“statica”等。通过将每个列入黑名单的单词锚定到字符串的末尾,只有当它们单独存在而没有任何尾随字符时,您才会匹配它们。
Edit: 代码成瘾者 https://stackoverflow.com/users/227665/codaddict提出了一种更干净的方法来完成基本相同的事情:
^(?!(?:static|my|admin|www)$).*$
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)