利用正则表达式分离汉字、英文、数字


在中文分词的过程中需要将英文,数字,汉字分离,数字和英文就不用分割了,主要是将分离出来的汉字进行分词,下面的算法实现利用正则表达式分离汉字、英文、数字:

//获取中文
string chRegS = @"[\u4e00-\u9fa5]+";
Regex chRegR = new Regex(chRegS);
Match chMacth = chRegR.Match(str);
while(chMacth.Success)
{
     CHresult.Add(chMacth.ToString());
     chMacth = chMacth.NextMatch();
}
//英文
string enRegS = @"[a-zA-Z]+";
Regex enRegR = new Regex(enRegS);
Match enMatch = enRegR.Match(str);
while (enMatch.Success)
{
     Enresult.Add(enMatch.ToString());
     enMatch = enMatch.NextMatch();
}
//数字
string numRegS = @"\d+";
Regex numRegR = new Regex(numRegS);
Match numMatch = numRegR.Match(str);
while (numMatch.Success)
{
     Numresult.Add(numMatch.ToString());
     numMatch = numMatch.NextMatch();
}

测试字符串:“可复用的WPF或者Silverlight应用程序和组件设计(3)——控件级别”

结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM