正则表达式限制所有小于100个字符的字母

j00*_*00b 4 regex

我需要将字符数限制为100的正则表达式并允许使用0-9,!@.,;:'"? - 以及所有大写和小写字母

Can*_*ice 8

/^[0-9A-Za-z!@.,;:'"?-]{1,100}\z/
Run Code Online (Sandbox Code Playgroud)

  • 不,不应该.在内部角色类中,大多数元字符(包括点)都失去了意义. (5认同)
  • 如果您对ASCII不感兴趣,还可以将"A-Za-z"替换为"\ p {L}",并且正则表达式支持Unicode. (3认同)

小智 7

^(.{1,100})$
Run Code Online (Sandbox Code Playgroud)

. 这将允许所有字符数字和特殊字符也是 {1,100}您需要的范围,如最小和最大计数


MBy*_*ByD 5

取决于语言,但应该是

^[0-9A-Za-z!@\.;:'"?-]{1,100}$
Run Code Online (Sandbox Code Playgroud)

正如评论中指出的那样,只是为了避免使用坏例子:

^[0-9A-Za-z!@.,;:'"?-]{1,100}\z
Run Code Online (Sandbox Code Playgroud)

  • 如果最后一个字符是换行符,则允许 101 个字符。甚至不允许换行。使用 `\z` 代替 `$`。这不允许`,`,因为它应该。`.` 之前的 `\ ` 是多余的(就像在 `?` 之前一样)。 (2认同)