用于关键字验证的综合正则表达式

时间:2018-08-07 20:41:32

标签: regex

如何编写具有以下约束条件的用于关键字验证的正则表达式

  1. 允许使用所有字母和数字。
  2. 您可以在关键字中使用,但不能使用前导或尾部空格。
  3. 使用连字符'-'时,只能用于对单词进行连字符,并且周围不能有空格。

例如

“ kkda asdlkfj-kklda12”应匹配

“ kdka-klad lakdjoa”不匹配

“ kdakla120alsd”不应该匹配(开头和结尾处的空格)

1 个答案:

答案 0 :(得分:1)

您可以使用模式:

^(?:[a-z0-9]+(?: (?!$)|-|$))+$
  • ^行首。
  • (?:非捕获组。
  • [a-z0-9]+匹配字母数字值。
  • (?: (?!$)|-|$))非捕获组,用于空白(只要它不在字符串(?!$)的末尾),-字符或字符串的末尾。
  • )关闭非捕获组。
  • +重复非捕获组。
  • $声明行尾。

您可以在线体验here