【发布时间】:2022-01-07 21:40:29
【问题描述】:
我正在研究一个允许用逗号分隔的字母数字字符的正则表达式。或者只是空格。没有逗号作为第一个字符。
我想做的事:
- "101010101sadadsasd,120120310231023a,adasdads1231,asdasdasda1231"
- " "
我要避免的事情:
- "&#@@$,asdasdads,asdsd@!@"
- ",aasdas,asdasd"
- "asda asdsad asdasd ,asdasd"
可以接受但不想要的:(可以忍受)
- ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
- "asdasdasdas,asdasd123123,adsasd23123,"
下面是实现的屏幕截图和 isMatch = true 的事件,即使值是符号而不是字母数字。
链接显示问题截图,截图代码如下:
bool result = true;
Regex regx = new Regex(@"(^[a-zA-Z0-9]+[a-zA-Z0-9,-,]*$| *)");
if (regx.IsMatch(rowUpdate.ConNoteNumber))
{
result = false;
}
return result;
【问题讨论】:
-
啊,你的意思是你有逗号分隔的字母数字?所以,试试
^(?:[a-zA-Z0-9]+(?:,[a-zA-Z0-9]+)*|\s*)$ -
我确实添加了一张图片@Luuk。它在我帖子底部的链接中?
-
^(?:(?:[A-Za-z0-9][A-Za-z0-9,]*)|\s+)$