问题描述
- 求助:Qt正则表达式求助
-
字符串内容为:
2015-09-16 14:30:52, 1365
2015-09-16 14:30:53, 1368
2015-09-16 14:30:54, 1375
2015-09-16 14:30:55, 1370我写的正则表达式为:QRegExp rx(tr(",sd{1,}"));
在Regex Match Tracer里验证是对的,怎么到Qt里就错了呢?
解决方案
d{4}-d{2}-d{2}sd{2}:d{2}:d{2},sd{1,}
解决方案二:
格式验证用:
^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)s+([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9],sd{1,}$
如果是字符串提取,去掉首尾的 ^
$
解决方案三:
引言
??? 正则表达式(regular expression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。比如 表达式“ab+” 描述的特征是“一个 'a' 和 任意个 'b' ”,那么 'ab', 'abb', 'abbbbbbbb......
答案就在这里:Qt中的正则表达式
时间: 2024-10-26 09:03:00