当前位置:编程学习 > C#/ASP.NET >>

正则表达式分离字符串

从一个字符串中分离出
匹配
(aaa,aaa,aaa,aaa,aaa,aaa)

aaa表示小于3位数的整数 --------------------编程问答-------------------- string pattern="\((aaa,){5}aaa\)"; --------------------编程问答-------------------- 需求描述不清,要提取?

\(\d{1,3}(?:,\d{1,3})*\)
--------------------编程问答--------------------
引用 2 楼 lxcnn 的回复:
需求描述不清,要提取?


C# code
\(\d{1,3}(?:,\d{1,3})*\)

不好意思
是要提取 --------------------编程问答-------------------- 2楼正则是否满足需求 --------------------编程问答--------------------
引用 4 楼 lxcnn 的回复:
2楼正则是否满足需求

没有试过
\(\d{1,3}(?:,\d{1,3})*\)
看不是很懂

举例
aaaaaaaaaaaa(22,33.dd)bbbb(1,12,134,15,254,251)dds(112,33,44,1)
就是提取这个(1,12,134,15,254,251) --------------------编程问答-------------------- 为什么不试?只提取6个元素的?

\(\d{1,3}(?:,\d{1,3}){5}\)
--------------------编程问答--------------------
引用 6 楼 lxcnn 的回复:
为什么不试?只提取6个元素的?


C# code
\(\d{1,3}(?:,\d{1,3}){5}\)


恩,只要刚好六6个的 --------------------编程问答--------------------

string r = @"(\(\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}\))";
            string rt = "1111111111(12,22,1,17,164)11111(111,22,1,17,164,147)";
            string[] str = Regex.Split(rt, r);
            Regex re = new Regex(r, RegexOptions.IgnoreCase);
            MatchCollection m = re.Matches(rt);
            foreach (Match ma in m)
            {
                Group g = ma.Groups[0];
                
               MessageBox.Show(ma.Groups.Count.ToString());
            }


为什么我这样写,ma.groups.count会是2呢
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,