求一个简单的正则

lxxldd 2010-03-16 02:54:56
返回字符串中英文和数字部分。比如:

1. abcd博客
返回:abcd

2. visual studio 2005和visual studion 2008的区别
返回:visual studio 2005和visual studion 2008
...全文
95 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
十八道胡同 2010-03-16
  • 打赏
  • 举报
回复
 string[] str = { "abcd博客", "visual studio 2005和visual studion 2008的区别", "visual studio 2005(1)和visual studion 2008-beat2的区别" };
Regex re = new Regex(@"[^\u4e00-\u9fa5]+");
foreach (string s in str)
{

MatchCollection mc = re.Matches(s);
foreach(Match m in mc)
Console.WriteLine(m.Value);
}
HatoLee 2010-03-16
  • 打赏
  • 举报
回复
十八道胡同 2010-03-16
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lxxldd 的回复:]
6楼方法可以,还有一点问题,我想匹配所有除了汉字意外的字符。
比如
visual studio 2005(1)和visual studion 2008-beat2的区别
这样只返回
visual studio 2005(1)
visual studion 2008-beat2
[/Quote]
[^\u4e00-\u9fa5]+
lxxldd 2010-03-16
  • 打赏
  • 举报
回复
6楼方法可以,还有一点问题,我想匹配所有除了汉字意外的字符。
比如
visual studio 2005(1)和visual studion 2008-beat2的区别
这样只返回
visual studio 2005(1)
visual studion 2008-beat2
menglingjun 2010-03-16
  • 打赏
  • 举报
回复
嗯,6楼的方法果然好使。。
十八道胡同 2010-03-16
  • 打赏
  • 举报
回复
 static void Main(string[] args)
{
string[] str = { "abcd博客", "visual studio 2005和visual studion 2008的区别" };
Regex re = new Regex(@"[a-z0-9\s]+");
foreach (string s in str)
{
MatchCollection mc = Regex.Matches(s, @"(?i)[a-z \d]+");
foreach (Match m in mc)
{

Console.WriteLine(m.Value);
}

}
兔子-顾问 2010-03-16
  • 打赏
  • 举报
回复

string yourStr = "visual studio 2005和visual studion 2008的区别";
MatchCollection mc = Regex.Matches(yourStr, @"(?i)[a-z \d]+");
foreach (Match m in mc)
{
MessageBox.Show(m.Value);
}
lxxldd 2010-03-16
  • 打赏
  • 举报
回复
2楼的对于
visual studio 2005和visual studion 2008的区别
会返回
visual
studio
2005
visual
studion
2008
而我要求返回
visual studio 2005
visual studion 2008
兔子-顾问 2010-03-16
  • 打赏
  • 举报
回复
没说明白
十八道胡同 2010-03-16
  • 打赏
  • 举报
回复
只有最后的中文不返回?
lxxldd 2010-03-16
  • 打赏
  • 举报
回复
没说明白?
烈火蜓蜻 2010-03-16
  • 打赏
  • 举报
回复
[a-zA-Z0-9]*

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧