`

如何匹配字符串中的汉字

阅读更多
匹配汉字:

Regex r= new Regex(@"[\u4e00-\u9fa5]+");
MatchCollection m=r.Match(yourstring);

-------------------------
如果需要使用正则表达式匹配Unicode字符的话...
这里是几个主要非英文语系字符范围(google上找到的):

2E80~33FFh:中日韩符号区。收容康熙字典部首、中日韩辅助部首、注音符号、日本假名、韩文音符,中日韩的符号、标点、带圈或带括符文数字、月份,以及日本的假名组合、单位、年号、月份、日期、时间等。

3400~4DFFh:中日韩认同表意文字扩充A区,总计收容6,582个中日韩汉字。

4E00~9FFFh:中日韩认同表意文字区,总计收容20,902个中日韩汉字。

A000~A4FFh:彝族文字区,收容中国南方彝族文字和字根。

AC00~D7FFh:韩文拼音组合字区,收容以韩文音符拼成的文字。

F900~FAFFh:中日韩兼容表意文字区,总计收容302个中日韩汉字。

FB00~FFFDh:文字表现形式区,收容组合拉丁文字、希伯来文、阿拉伯文、中日韩直式标点、小符号、半角符号、全角符号等。

比如需要匹配所有中日韩非符号字符,那么正则表达式应该是^[\u3400-\u9FFF]+$
理论上没错, 可是我到msn.co.ko随便复制了个韩文下来, 发现根本不对, 诡异
再到msn.co.jp复制了个'お', 也不得行..

然后把范围扩大到^[\u2E80-\u9FFF]+$, 这样倒是都通过了, 这个应该就是匹配中日韩文字的正则表达式了, 包括我們臺灣省還在盲目使用的繁體中文

而关于中文的正则表达式, 应该是^[\u4E00-\u9FFF]+$, 和论坛里常被人提起的^[\u4E00-\u9FA5]+$很接近

需要注意的是论坛里说的^[\u4E00-\u9FA5]+$这是专门用于匹配简体中文的正则表达式, 实际上繁体字也在里面, 我用测试器测试了下'中華人民共和國', 也通过了, 当然, ^[\u4E00-\u9FFF]+$也是一样的结果

分享到:
评论

相关推荐

    C#中文文本匹配,字符串匹配,中文词语匹配,计算2个句子相似度

    中文匹配C#中文文本匹配,字符串匹配,中文词语匹配,计算2个句子相似度 C#中文文本匹配,字符串匹配,中文词语匹配,计算多个句子相似度 C#中文文本匹配,字符串匹配,中文词语匹配,计算2个句子相似度 C#中文文本...

    字符串中是否包含中文

    其中一项常见的需求就是检测一个字符串中是否包含中文字符。这在多种应用场景下都非常有用,比如中文输入验证、数据清洗等。本篇文章将详细介绍如何利用正则表达式来实现这一功能。 ### 一、正则表达式的概念 正则...

    c#利用regex获取字符串中汉字的个数

    总结来说,C#中利用正则表达式获取字符串中汉字个数的方法主要依赖于对Unicode编码的理解以及正确构造匹配汉字的正则表达式。在实际开发中,这样的功能可以应用于文本分析、语言识别、数据清洗等多个场景。理解并...

    c#获取字符串中汉字的个数

    总结一下,获取C#字符串中汉字个数的方法主要有两种:通过遍历并检查Unicode值,以及使用正则表达式进行匹配。每种方法都有其适用场景,可以根据项目需求选择合适的方式。以上代码示例可以作为参考,方便学习和交流...

    LabVIEW拆分中文字符串.rar

    在LabVIEW中处理字符串,尤其是中文字符串,有时会涉及到特殊的技巧和注意事项,因为中文字符是多字节的,与英文等单字节字符处理方式有所不同。这个"LabVIEW拆分中文字符串.rar"文件很可能是提供了一个解决此类问题...

    Android常用字符串匹配正则

    isZh : 验证汉字 isUsername : 验证用户名 isDate : 验证yyyy-MM-dd格式的日期校验,已考虑平闰年 isIP : 验证IP地址 isMatch : 判断是否匹配正则 getMatches : 获取正则匹配的部分 getSplits : 获取正则匹配分组 ...

    C#匹配中文字符串的4种正则表达式分享

    本文介绍在C#中使用匹配中文的正则表达式,包括纯中文、有中文、中文开头、中文结尾等几个正则表达式示例。在正则表达式中,中文可以通过Unicode编码来...2、匹配字符串中包含中文字符的正则表达式 代码如下:”[\u4e00

    C#正则表达式大全, 判断字符串是否为正整数,中文,英文.....

    该方法使用了正则表达式 "[0-9]+" 来匹配字符串中的数字字符,然后将匹配的字符串返回。 知识点 5:返回字符串中左边的字符 在上面的代码中,我们可以看到一个名为 RunLeftString 的方法,该方法可以返回字符串中...

    匹配中文字符串的拼音首字母或英文字符串的首字母缩写,源码

    在IT行业中,中文字符串的拼音首字母匹配以及英文字符串的首字母缩写是常见的文本处理需求,尤其是在数据处理、搜索引擎优化、用户界面设计等领域。这个压缩包文件"GetHighlightAcronymLib"似乎提供了一个库或者工具...

    用户输入一个字符串后,判断该字符串中包含几个汉字

    总结一下,C#中判断字符串中汉字数量的方法主要有两种:一是通过Unicode类别,二是通过正则表达式匹配。具体选择哪种方法取决于实际需求和性能考虑。在处理大量数据时,正则表达式可能会更快,但在某些特定情况下,...

    KMP中文字符匹配算法的C++实现

    KMP算法的核心是构建一个部分匹配表(也称为失败函数),用于在主串中遇到不匹配字符时,避免回溯,从而提高搜索效率。对于中文字符匹配,我们需要注意编码问题,因为中文字符通常采用UTF-8或GBK等多字节编码。 在...

    获取字符串中的汉字

    3. **使用正则表达式**:如果字符串较长且复杂,可以利用正则表达式来匹配汉字。C++11引入了对正则表达式的支持,通过`<regex>`库可以实现。 ```cpp #include #include #include std::regex chineseRegex(R"((...

    PHP中如何截取中文字符串

    在PHP中处理中文字符串截取是一项常见的任务,尤其是在网页开发中。中文字符串通常包含UTF-8编码的字符,这与ASCII编码的英文字符串处理方式有所不同。以下将详细讲解如何在PHP中正确截取中文字符串。 首先,我们...

    MySql字符串相似匹配

    亲测可用,mysql字符串相似度匹配函数。下载后直接在mysql中可以测试运行。

    柔性字符串匹配____中文阴影版PDF

    字符串匹配是计算机科学中的一个核心问题,涉及到在一段文本(主字符串)中查找一个或多个模式(子字符串)的过程。传统的字符串匹配算法,如KMP算法、Boyer-Moore算法等,都是基于精确匹配的原则进行设计的,即要求...

    JavaScript截取中文字符串

    本示例中的`subString`函数通过以下步骤实现了中文字符串的精准截取: 1. **初始化变量**:定义新字符串长度`newLength`、新字符串`newStr`以及是否添加省略号标志`hasDot`。 2. **判断字符类型**:使用正则表达式`...

    Go-一个简单而快速的Go库用于将输入字符串模糊匹配到目标字符串列表

    标题中的“Go-一个简单而快速的Go库用于将输入字符串模糊匹配到目标字符串列表”表明,这是一个基于Go语言开发的库,其主要功能是实现输入字符串与一系列目标字符串之间的模糊匹配。在文本处理领域,模糊匹配是一种...

    C字符串查找优化,strstr函数查找无中文汉字问题

    C strstr字符串查找函数优化,解决查找中文汉字匹配存在错误BUG问题。支持GBK、GB18030字符串。

Global site tag (gtag.js) - Google Analytics