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}]+$/

即:

搞定,

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

相关推荐
FPGAI7 小时前
Qt编程之信号与槽
开发语言·qt
只因在人海中多看了你一眼9 小时前
B.50.10.09-RPC核心原理与电商应用
qt·网络协议·rpc
yudiandian201411 小时前
【QT 5.12.12 下载 Windows 版本】
开发语言·qt
炮院李教员13 小时前
使用Qt Core模块(无GUI依赖),确保程序作为后台服务/daemon运行,与任何GUI完全无交互。
开发语言·qt
歪歪10013 小时前
Qt Creator 打包应用程序时经常会遇到各种问题
开发语言·c++·qt·架构·编辑器
滴滴滴嘟嘟嘟.13 小时前
Qt自定义列表项与QListWidget学习
开发语言·qt·学习
滴滴滴嘟嘟嘟.17 小时前
Qt对话框与文件操作学习
开发语言·qt·学习
滴滴滴嘟嘟嘟.19 小时前
Qt图表功能学习
开发语言·qt·学习
钱彬 (Qian Bin)20 小时前
一文掌握工业缺陷检测项目实战(Pytorch算法训练、部署、C++ DLL制作、Qt集成)
c++·pytorch·python·qt·实战·工业缺陷检测·faster rcnn
FPGAI1 天前
Qt的入门
笔记·qt·学习