0

我正在尝试验证 QLineEdit 的输入,但我的语法在某处有错误,因为当我运行我的程序时,它不允许我在编辑框中输入任何内容。该条目需要是 3 个大写字母字符,后跟 1,2 或 3,然后是另外 2 个数字,最后是一个字母或数字字符。

QRegExp StudentForm::modCodeFormat("(\\s{3}\\d[123]\\d{2}\\w{1})");
4

1 回答 1

5
(\\s{3}\\d[123]\\d{2}\\w{1})
   ^      ^       ^     ^
  This mat|ches wh|ite s|pace characters, not uppercase alphabetics
          |       |     |
        This match|es a |number then either a 1, 2 or a 3
                  |     |
                This mat|ches two numbers
                        |
                   This matches a single word characters, that is either a single number, uppercase, lowercase or an underscore _ character

相反,您应该使用:

^[A-Z]{3}[123][0-9]{2}[a-zA-Z0-9]$
于 2013-08-28T15:56:28.133 回答