正则表达式模式,不允许在开始和结尾使用斜杠,并且不允许使用特殊字符(斜杠,下划线和空格除外)

时间:2019-08-21 07:33:14

标签: regex

我对此列表有要求

  1. 开头和结尾处都没有斜杠(/),下划线(_)和空格()。
  2. 允许在字符串之间使用空格,下划线和斜杠的字母数字。
  3. 除斜杠(/),下划线(_)和空格()外,不允许所有特殊字符。

test-(不正确)末尾的空格 测试-(正确)最后没有空格  测试-开头的空间(错误) 54test /-(不正确)/最后 / 54test-(不正确)/开头 54test /一个-(正确) 54测试一个/我-(正确) 54test / my-(不正确)

这是我当前的正则表达式,但是我不能真正扩展它,因为我对正则表达式还很陌生。而且我只是在SO的某个帖子上得到的

^[a-z0-9](?!.*?[^\na-z0-9]{2}).*?[a-z0-9]$

1 个答案:

答案 0 :(得分:1)

您可以使用

^[a-zA-Z0-9]+(?:[_\/ ][a-zA-Z0-9]+)*$

请参见regex demoregex graph

enter image description here

详细信息

  • ^-字符串的开头
  • [a-zA-Z0-9]+-1个以上字母数字字符
  • (?:[_\/ ][a-zA-Z0-9]+)*-_/或空格的0个或多个重复,然后是1+个字母数字字符
  • $-字符串结尾