我使用rexeg只允许文本字段中的某些字符。该解决方案很有效但是当该字段留空时,验证会引发错误。基本上,我需要在使用以下规则验证的字段中允许空字符串:
/^[0-9a-zA-Z,.()+\/\s-]+$/
我尝试将|
和|null
放在正则表达式规则中的不同位置 - 在开头,结尾,括号内部或外部,但它不起作用。它要么允许所有字符,要么仍然不允许空字符串。有更多知识的人可以提出解决方案吗:
答案 0 :(得分:3)
只需将+
(1个或多个匹配项)替换为*
(零个或多个匹配项)
示例:
/^[0-9a-zA-Z,.()+\/\s-]*$/
答案 1 :(得分:3)
用*。
替换最后的++表示前一个令牌的无限重复
*表示前一个标记的零到无限重复
答案 2 :(得分:2)
你可以试试这个:
/^[0-9a-zA-Z,.()+\/\s-]*$/
^-- replace + with *