我正在尝试使用正则表达式来验证只允许某种格式的文本字段
示例:[Apple] [Orange] [Durian] ABC
以下是格式
的一些规则括号中的项目和字符串开头之间不允许使用任何字符。
至少有一个括号中的项目,但不超过5个。
在括号内的项目中只允许使用这些字符串:Apple,Orange,Durian,Pear。
整个字符串不超过100个字符。
我出来了:"(<?bracket>\[(Apple|Orange|Durian )\]){1,5}"
但是在尝试加载页面时遇到了这个错误:
解析“”(?括号“ - 还不够”)。 任何人都可以根据格式规则协助正则表达式,谢谢。
答案 0 :(得分:1)
字符串<?bracket>
在那里做什么?我不认为这是任何正则表达式语法的一部分,我也不认为它是一个特定于asp.net的东西。
关于您的四个标准:
1)将插入符号(字符^)放在正则表达式的开头。这表明无论是什么之后它必须是该领域的开始。
2)我认为你有这个权利。将整个表达式括在括号中,然后加上{1,5}
3)我认为这是对的。这些词需要大写吗?如果没有,请记住指定小写字母作为替代(例如[Dd]urian
)或向整个表达式添加不区分大小写的修饰符。
4)我认为你不能使用相同的正则表达式来做到这一点。您需要执行单独的验证步骤,以查看字符串是否与^.{1,100}$
匹配。