C# 正则用法

发布时间 2023-11-29 16:01:19作者: 小黄鸭

C#官网

1. 先贴代码

        public static List<string> GetValueByRegex(this string value)
        {
            List<string> list = new List<string>();
            var regex = new Regex(@"(?<=\${).*?(?=})");
            var match = regex.Matches(value);
            foreach (Match item in match)
            {
                list.Add(item.Value);
            }
            return list;
        }
正则匹配${}中的参数

 2.解释正则 var regex = new Regex(@"(?<=\${).*?(?=})");

(?<=\${) 匹配左边${,定位到左边第一个,由于$是特殊字符,匹配时候前面加\。

.*? 表示匹配{}中间的内容,并且使用非贪婪模式尽可能少的匹配字符,最终只留下{}中的内容。

(?=}) 匹配右边},定位到右边第一个。

比如 var str = "hha${user}b{88}fdaaa${age}"; 匹配到的是user,age

3.知识点

 4.使用地方:邮件内容模板替换,标签查找等