正则表达式应用 现在有一串字符类似下面这样"1.abd 2.bce 3.hesdss 4.adfaa"我想得到匹配空格+数字+"."这一串(例如" 2.")的第一个匹配的起始位置,然后把这一子串取出来,用正则该如何做,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 "1.abd 2.bce 3.hesdss 4.adfaa".split(" ")不可以么?正则的话用(\d+\.\S+) Regex reg = new Regex(@"(\d+\.)\S+"); string w = "1.abd 2.bce 3.hesdss 4.adfaa"; MatchCollection mc=reg.Matches(w); foreach (Match var in mc) { string x = var.Groups[1].Value; Console.WriteLine(x+" position:"+w.IndexOf(x)); } 楼主既然一定要正则,就用上面的代码好了其实还是用split更简单 用4楼就可以了不过注意数字前面有一空格的话表达式稍微改一下Regex reg = new Regex(@"\s+\d+\."); DataTable中插入一行后如何返回自增号? c# RichTextBox 想让一行字体剧中,前提我加过图片,代码如下 C# 读取sql中的text类型 数据? 请教 Timer延时问题 如何在程序中执行一段string型HTML代码并得到响应的HTMl文本 如何做到复制表后 自增列值与原表一致 关于用RichTextBox进行文件拖放的郁闷问题 如何精确匹配字符串? 请教一个简单问题 用VS2010做windows窗体程序数据库里只能存一条,多一条就存不进去了是怎么回事? 如何查看C#代码对应的CLR语句? btnSelect的一个小问题
Regex reg = new Regex(@"(\d+\.)\S+");
string w = "1.abd 2.bce 3.hesdss 4.adfaa";
MatchCollection mc=reg.Matches(w);
foreach (Match var in mc)
{
string x = var.Groups[1].Value;
Console.WriteLine(x+" position:"+w.IndexOf(x));
}
不过注意数字前面有一空格的话表达式稍微改一下
Regex reg = new Regex(@"\s+\d+\.");