QRegExpValidator类用于根据正则表达式检查字符串。
QRegExpValidator使用正则表达式(regexp)来确定输入字符串是可接受的、中间的还是无效的。regexp可以在构建QRegExpValidator时提供,也可以在稍后的时候提供。
当QRegExpValidator确定一个字符串是否可接受时,regexp被视为以字符串断言(^)开头,以字符串断言($)结尾;匹配针对整个输入字符串,如果起始位置大于零,则从给定位置匹配。
如果字符串是可接受字符串的前缀,则认为它是中间的。例如,“”和“A”是regexp [A- z][0-9]的中间值(而“_”是无效的)。
// regexp: optional '-' followed by between 1 and 3 digits
QRegExp rx("-?\\d{1,3}");
QValidator *validator = new QRegExpValidator(rx, this);
QLineEdit *edit = new QLineEdit(this);
edit->setValidator(validator);