我已经有以下正则表达式:^([^\s]+\s)*([^\s]+$)
它执行以下操作:
- 开头没有空格
- 末尾没有空格
- 中间不能有双空格
- 任意字符
但现在我需要它在任何位置至少包含一个大写或小写字母。
我尝试在多个地方使用 [A-Za-z] 进行游戏,但没有成功。
我怎样才能完成这个?
提前致谢。
最佳答案
我认为应该这样做:
^(\S\s?)*[A-Za-z](\s?\S)*$
- 这不接受空字符串
- 它只接受长度为 1 的字符串,如果它们看起来像
[A-Za-z]
- 我们不允许在开头出现空格,要求任何空格字符前面都必须有
A-Za-z
左侧的非空格字符 - 我们不允许在字符串末尾出现空格,要求任何空格字符后跟
A-Za-z
右侧的非空格字符 - 双空格被 3 和 4 覆盖,因为字符串中任何空格都必须与非空格相邻
关于javascript - 将 'at least one letter, upper or lower case at any position' 添加到现有正则表达式 (javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48272825/