我有一个用于验证字符串的正则表达式,但它不接受分号?是因为我必须使用一些转义序列吗?我测试了我的正则表达式here并且它通过了允许分号但在我的c#app中不允许。
已编辑我有以下正则表达式
^[A-Za-z0-9]{1}[A-Za-z.&0-9\s\\-]{0,21}$
并尝试验证sar232 trading inc;
答案 0 :(得分:5)
&
实体提示您在某个XML属性中包含此正则表达式,并且当将模式发送到该&
时,此&
将被解析为单个someattr="^[A-Za-z0-9][;A-Za-z.&0-9\s\\-]{0,21}$"
^
符号。正则表达式引擎。
这意味着,你的模式在第二个字符类中缺少分号,这就是你的正则表达式与你提供的字符串不匹配的原因。
解决方案很简单:将分号添加到第二个字符类:
{1}
请参阅regex demo
另请注意,[A-Za-z0-9]
限制量词是多余的,因为@JsonIgnore
已经只匹配指定范围内的1个符号。