环视结构
不匹配
任何
字符
,
只匹配
文本中的特定
位置
。
-
顺序环视
:从左向右查看文本,尝试匹配子表达式,如果能够匹配则返回匹配成功信息。顺序环视使用「
(?=…)
来标识」,例如「 (?=\d) 」,它表示如果当前
位置
的
右
边字符是数字,则匹配成功。 -
逆序环视
:从右向左查看文本,尝试匹配子表达式,如果能够匹配则返回匹配成功信息。逆序环视使用「
(?<=…)
来标识」,例如「 (?<=\d) 」,它表示如果当前
位置
的
左
边字符是数字,则匹配成功。
环视不会”占用”字符位置的,可以理解为 『它占用的位置信息,而不是位置上的字符』
利用环视,解决数字中按位插入逗号 。例如:1234567 在有些地方需要展示为:1,234,567
string str = "123456789"; Regex reg = new Regex(@"(?<=\d)(?=(\d\d\d)+$)"); string str2 = reg.Replace(str, ","); Console.WriteLine(str2); //输出:123,456,789 Console.ReadKey();
转载于:https://www.cnblogs.com/zhaoshujie/p/9718118.html