正则表达式前瞻或子句

regex lookahead or clauses

我的前瞻中需要一个 or 子句:

/^(?=[A-Za-z0-9]{2,50}$)[a-zA-Z0-9]+[A-Za-z0-9'\s]+$/m

在这里,我需要一个大写字母、小写字母和一个数字与我的前瞻。

我需要的是一个需要大写和小写字母、第二个小写字母的子句或只有数字的第三个子句的前瞻。

这是一些数据:

不是 我很了解您的需求,但是可以吗?

/^(?=[A-Za-z0-9]{2,50}$)(?=.*(?:[A-Za-z]|\d))[a-zA-Z0-9]+[A-Za-z0-9'\s]+$/m

这就足够了:

/^(?:\d+|[a-zA-Z]+)$/

根据评论:

/^(?=[A-Za-z0-9'\s]{2,50}$)(?=.*(?:[A-Za-z]|\d))[a-zA-Z0-9]+[A-Za-z0-9'\s]+$/m

解释:

/
^                           : Start of string
(?=[A-Za-z0-9'\s]{2,50}$)   : lookahead, from 2 up to 50 characters that are in the class
(?=.*(?:[A-Za-z]|\d))       : lookahead, there is at least one letter or one digit
[a-zA-Z0-9]+                : one or more alphanum
[A-Za-z0-9'\s]+             : one or more alphanum or quote or space
$                           : end of string
/m