我有postal code of Canada的正则表达式。
^[ABCEGHJKLMNPRSTVXY]{1}\d{1}[A-Z]{1} *\d{1}[A-Z]{1}\d{1}$
工作正常,但只接受大写字母。我希望它适用于大写和小写字母。
答案 0 :(得分:64)
只需使用IgnoreCase
选项,请参阅.NET regular Expression Options
所以你的正则表达式创建看起来像这样
Regex r = new Regex(@"^[ABCEGHJKLMNPRSTVXY]\d[A-Z] *\d[A-Z]\d$", RegexOptions.IgnoreCase);
我也删除了所有{1}
,因为它是多余的。每个项目默认匹配一次,无需明确说明。
当您无法在对象上设置内联修饰符时,另一种可能性是使用内联修饰符。
^(?i)[ABCEGHJKLMNPRSTVXY]\d[A-Z] *\d[A-Z]\d$