Qt6 QML RegularExpressionValidator 输入中文的坑

本人最近使用Qt6.7.2编译CMAKE项目,主风格qml ,但在用TextField{}时却遇到了问题,

原本要求,编辑框只能输入中文汉字,

一听,很简单嘛,正则表达式:

一看,没毛病,老铁,但是,却达不到想要的效果,编辑框输入时,根本输入不了汉字,会一直报错:

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^\\u4e00-\\u9fa5+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^\\u4e00-\\u9fa5+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^\\u4e00-\\u9fa5+$)\z')

QRegularExpressionPrivate::doMatch(): called on an invalid QRegularExpression object (pattern is '\A(?:^\\u4e00-\\u9fa5+$)\z')..................

这是为何呢?

废话不多说,

原因:QTBUG-116808 QML does not handle regular expression as expected - Qt Bug Tracker

真正可行的是:

regularExpression: /^\\N{U+4e00}-\\N{U+9fa5}+$/

即:

搞定,

看来真正阻碍自己脚步的,并不是远处的高山,而是鞋里的一粒沙子......

相关推荐
qq_401700413 小时前
Qt QUrl 详解与代码示例
开发语言·数据库·qt
雨田言炎5 小时前
Qt的常用类QList--序列数据管理
嵌入式硬件·qt
朽棘不雕9 小时前
Qt项目代码解释
开发语言·qt
CVer儿9 小时前
vs2022配置qt
开发语言·qt
kaixin_learn_qt_ing10 小时前
Qt 打开目录多选对话框
qt
lqj_本人18 小时前
WinPcap 鸿蒙 PC 适配全记录:从 NPF 原始抓包到 VPN_TUN 与 libpcap 双通路
qt·华为·harmonyos
Quz21 小时前
QML StackView:三种入栈方式(Item、Component 与 URL)
qt
Quz21 小时前
QML StackView:入栈、出栈、替换与批量操作
qt
老赵的博客1 天前
c++面试之从虚函数表到Rtti一次性讲清楚
c++·qt
颜颜yan_1 天前
Git Cola 鸿蒙 PC 版适配全记录:从 Qt 桌面工具到 ArkTS 原生应用
git·qt·harmonyos