2 xlp sky xlp_sky 于 2016.02.02 16:28 提问

C++ 正则表达式 汉字有些显示不出

在C++中使用正则表达进行匹配,想实现只可以匹配汉字、字母、数字、下划线
用的如下公式:

regex pattern("^[a-zA-Z0-9_\u4e00-\u9fa5]{0,}+$");

编译运行的时候,数字、字母均可以实现,下划线实现不了,汉字是有些不能显示。

求教各位大神指出哪边有问题,或者可不可以教我正确的表达式~不吝感激

2个回答

oyljerry
oyljerry   Ds   Rxr 2016.02.02 16:45

字母数字下划线,可以用\w来代替
汉字要看你的字符串中汉字是否为unicode的编码。

xlp_sky
xlp_sky 感谢回答,你那边可以提供给我一个表达式不?我刚把\w加进去 还是不行 字母数字也都显示不出来了,小白求指教哇
2 年多之前 回复
q107770540
q107770540   Ds   Rxr 2016.02.23 15:02

egex pattern("^[a-zA-Z0-9_\u4e00-\u9fa5]{0,}+$");

你的正则里为何要写 {0,}? 后边的+ 已经表示匹配1-N次了,前边再来个 {0,}实在让我看不懂。。。

试试这个:

regex pattern("^[a-zA-Z0-9_\u4e00-\u9fa5]+$");

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
在C程序中显示汉字
     在许多C程序设计中,要用到汉字进行提示或人机交互,而现行的Turbo C集成开发环境不是汉化的,如何编制能显示汉字的C程序呢?下面的方法可以帮你在西文环境下显示汉字。    这种方法是调用中文汉字库进行汉字显示。国家标准规定:汉字库分94个区,每个区有94个汉字(以位作区别),每个汉字在汉字库中有确定的区和位编号,这就是汉字的区位码。每个汉字在库中是以点阵字模形式存储的,一般采用
利用正则表达式去提取特征汉字
public static void main(String[] args) throws IOException { String str = "本帖最后由henry.cao于昨日编辑此类信息也显示出来了"; BufferedReader in; Pattern pattern = Pattern.compile("([\u672C|\u5E16|\u6700|\u540E|\u7531]
1602显示汉字c程序
1602显示汉字c程序1602显示汉字c程序1602显示汉字c程序1602显示汉字c程序
搜狗五笔输入法打不出"屌"字等的解决办法
用了五笔好长时间,有时候,有些特殊的字打不出来,比如:“屌" 字。 研究了好久,原来是编码不对,选择选中 GBK码。 方法如下: 1. 右击输入法栏 2. 选择 “快速切换”——勾选”GBK字符”,然后就可以打出来了,屌字的五笔码是NKMH. 乐意黎原创, 禁止转载 本文地址:
只能输入中文的正则表达式
最近在学习EXT-JS,看到一个正则判断是否是中文,罗列如下 regex: /^[\u4E00-\u9FA5]+$/, 是不是很巧妙 Ext.onReady(function(){ Ext.QuickTips.init(); var form = new Ext.form.FormPanel({ defaultTy
正则表达式与遇到的问题
问题: 1、 // 有疑问,为什么不匹配 System.out.println("a".matches("a-z[A-Z]")); System.out.println("R".matches("A-Z&&[RFG]")); ---下面内容转载----------------------------------------------------------------------
关于Notepad++中用正则表达式匹配中文的问题
通常正则表达式匹配中文可以利用Unicode的特点,使用[\u4e00-\u9fa5]匹配。但在Notepad++中不能正常使用。 解决方法是,首先将编码转换成Unicode(菜单->格式->转换为UTF-8,如果不转换可能匹配出错),然后使用[\x{4e00}-\x{9fa5}]就可以实现匹配中文了。
关于在linux操作系统下打不出汉字或者在敲打汉字时无法显示拼音的问题
昨天不小心将/usr/lib64/python2.6/gettext.py 的内容做了修改,今天刚一来上班就发现我的输入法出现了问题。。所以今天呢,索性写上几笔,万一对你有用呢
JavaScript 正则表达式匹配汉字
一个可能有 20 年历史的正则表达式 在谷歌搜索「JavaScript 正则表达式匹配汉字」的时候,前几条结果全都是 /[\u4e00-\u9fa5]/。没有人怀疑这个正则表达式有什么问题,那么在 2018 年的今天,让我们站在 Chrome 64 的肩膀上,放飞一下自我。 汉文(Han Script)是汉语、日本语、朝鲜语、韩国语的书写系统中的一种文字(Script),越南语在早
朋友今天问俺,日文输入法无法打出日语汉字?
当然先google  and baidu下先,要吸取下别人的经验。运气很好,N多人有相同的问题。原来是偷懒安装系统引起的。 http://coffeejp.com/bbs/viewthread.php?tid=94789http://zhidao.baidu.com/question/5386377.html?fr=qrl3本人也是日语