[英]Regex to get first 6 and last 4 characters of a string
我想用正则表达式,而不是与string.replace()来获得一个字符串的第6个字节和最后4个字符相同的字符串,并用另一个字符替代它: &
例如。 该字符串始终为16个字符。 我正在做一些研究,但我以前从未使用过regex。 谢谢
如果您更喜欢使用正则表达式,则可以使用以下内容。 点.
将匹配换行符以外的任何字符,因此您可以指定{n}
精确匹配n次,并使用字符串锚点的开头/结尾。
String r = Regex.Replace("123456foobar7890", @"^.{6}|.{4}$",
m => new string('&', m.ToString().Length));
Console.WriteLine(r); //=> "&&&&&&foobar&&&&"
如果要反转逻辑,请替换字符串的中间部分,可以使用Positive Lookbehind 。
String r = Regex.Replace("123456foobar7890", @"(?<=^.{6}).{6}",
m => new string('&', m.ToString().Length));
Console.WriteLine(r); //=> "123456&&&&&&7890"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.