我们需要使用具有特定验证规则的正则表达式来验证逗号分隔的字符串:
- 除了字母数字值,只允许使用逗号、冒号、空格和连字符
- 如果我们在子字符串中有一个冒号 (:):
- 两边的字符串长度应该匹配。
- 两边的空格或连字符(仅允许)的位置也应该匹配。
- 两边的字符串不能以 - 或空格开头/结尾。
下面是一个有效字符串的例子:
asd asds:121 asdd,qrt-123:rwt-wqe,ADER*,AASD
有效的:
- 100a
- 100测试*
- 100a,100a,100a*
- 100-1000:300-ASDS
- asd asds:121 asdd,qrt-123:rwt-wqe
无效的有:
- 100a*w
- 100-10:10-10
- 九月 j:se pj
- 100-10:100-10,ABC DER:AB CD
这是我们迄今为止尝试过的,但它只关注基础:
[0-9a-zA-Z\-:\* ]{1,20}([,|\n|\r][0-9a-zA-Z\-:\* ]{1,20})*
我是正则表达式世界的新手,你能帮我为此构建一个吗?