正则表达式过滤和排除禁用词
Regex filtering and excluding forbidden words
正在努力满足这些要求:
- 允许字母数字
[a-zA-z0-9]
或 \w+
- 只允许数字
- 至少 8 个字符
\S{8,}
- 禁用词:test, pimba, vraw
^(!?.*Test|pimba|vraw).*$
or \b(?:(?!word)\w)+\b
问题是我不能把它们混合在一起。
文档读取:Mozila - Character Classes, Group and Ranges,
indicative Regex、
我正在使用 https://regex101.com/ 来尝试正则表达式验证。
尝试次数:
\b(?:(?!word)\w)+\b(\S{8,})
^(?=\S*\w+)(\S{8,})\b$
^(?!.pimba|vraw|\d{8}).$
^(?=\S*\w+)(\S{8,})+(!?.*Test)$
您可以使用这个正则表达式:
^(?!\d+$)(?!.*(?:Test|pimba|vraw))\w{8,}$
正则表达式详细信息:
^
: 开始
(?!\d+$)
:如果我们有所有数字,则否定前瞻使匹配失败
(?!.*(?:Test|pimba|vraw))
:如果这些子字符串中的任何一个出现在输入中的任何位置,则否定前瞻会使匹配失败
\w{8,}
:匹配8个或更多单词字符
$
:结束
正在努力满足这些要求:
- 允许字母数字
[a-zA-z0-9]
或\w+
- 只允许数字
- 至少 8 个字符
\S{8,}
- 禁用词:test, pimba, vraw
^(!?.*Test|pimba|vraw).*$
or\b(?:(?!word)\w)+\b
问题是我不能把它们混合在一起。
文档读取:Mozila - Character Classes, Group and Ranges,
indicative Regex、
我正在使用 https://regex101.com/ 来尝试正则表达式验证。
尝试次数:
\b(?:(?!word)\w)+\b(\S{8,})
^(?=\S*\w+)(\S{8,})\b$
^(?!.pimba|vraw|\d{8}).$
^(?=\S*\w+)(\S{8,})+(!?.*Test)$
您可以使用这个正则表达式:
^(?!\d+$)(?!.*(?:Test|pimba|vraw))\w{8,}$
正则表达式详细信息:
^
: 开始(?!\d+$)
:如果我们有所有数字,则否定前瞻使匹配失败(?!.*(?:Test|pimba|vraw))
:如果这些子字符串中的任何一个出现在输入中的任何位置,则否定前瞻会使匹配失败\w{8,}
:匹配8个或更多单词字符$
:结束