• 全部
  • .NET Framework
  • ASP
  • Web Services
  • .NET互联网桌面应用
  • VB
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • AppLauncher
  • 问答

求一个正则表达式

listhome 2008-03-13 09:26:29
将除汉字、英文字母、数字之外(包括空格)的字符视为垃圾字符。在系统进行比对时认为垃圾字符不存在。例如:“塑性聚氯乙烯粉末”和“塑性聚氯乙烯粉末//”、“塑性聚氯乙烯 粉末”、“。。塑性聚氯乙烯粉末”、“ 塑性聚氯乙烯粉末 ”、“@塑性聚氯乙烯粉末%$@#&*(!”在比较时应视为同品名商品。而“塑性聚氯乙烯粉末ab”、“塑性聚氯乙烯粉末二 ” 、“123塑性聚氯乙烯粉末”在比较时应视为不同品名。
...全文
49 点赞 收藏 13
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
大宇_ 2008-03-13

Regex r = new Regex(\w*);
string message = null;
MatchCollection mCollection = r.Matches(字符串);

mCollection 可以取出每个样品的品名了
回复
rangeon 2008-03-13
学习
回复
wuhq030710914 2008-03-13
[^\u4e00-\u9fa5\da-zA-Z]+

用上面的表达式把垃圾字符replace成空在进行比较
回复
harryheart 2008-03-13
把非汉字字母和数字用String.Empty替换
然后再比较了

string str1="。。塑性聚氯乙烯粉末";
string str2="塑性聚氯乙烯粉末";
str1=Regex.Replace(str1,@"[^0-9a-zA-Z\u4e00-\u9fa5]*",String.Empty);
str2=Regex.Replace(str2,@"[^0-9a-zA-Z\u4e00-\u9fa5]*",String.Empty);
if(str1.Equals(str2))
Console.WriteLine("同一种商品");
else
Console.WriteLine("不同的商品");


手写代码,有错的话自己改下了
回复
wdzr_826 2008-03-13
Regex.Replace(uu, @"[^A-Za-z0-9\u4e00-\u9fa5]", "");
把非法字符替换以后在比较
回复
listhome 2008-03-13
顶一下
回复
WNASP 2008-03-13
help up!
回复
Plife472 2008-03-13
JF
回复
Plife472 2008-03-13
UP
回复
listhome 2008-03-13
顶一下
回复
listhome 2008-03-13
顶一下
回复
listhome 2008-03-13
顶一下
回复
listhome 2008-03-13
顶一下
回复
发帖
.NET技术社区
创建于2007-09-28

5.8w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2008-03-13 09:26
社区公告
暂无公告