1

我尝试使用以下规范创建正则表达式

  • 任何字母字符(至少一个)

  • 任何数字字符(至少一个)

  • 没有空间

  • 接受所有特殊字符(除了",;&|'

^(?=.*[0-9])(?=.*[a-z])(?!.*\s)((?!.*[",;&|'])|(?=(.*\W){1,}))(?!.*[",;&|'])$

这是我试过的。我能用这个做什么?

4

1 回答 1

2

问题本质上仍然含糊不清,请提供一些可接受的字符串示例。

只是为了让您开始,您可以使用:

  • 负前瞻中的字符类
  • 不要忘记开始和结束锚点:

正则表达式:

/^(?=.*?\d)(?=.*?[a-z])(?!.*?[ ",;&|']).+$/i

此正则表达式将匹配 1 个或多个字符,这些字符不是一个 ",;&|'且至少一个数字,并且a-z需要 alpgabet。

现场演示:http ://www.rubular.com/r/nxdi79ZcRx

在 PHP 中像这样使用它:

'/^(?=.*?\d)(?=.*?[a-z])(?!.*?[ ",;&|\']).+$/i'
于 2013-07-26T09:57:42.867 回答