小编Nay*_*yan的帖子

使用正则表达式进行SSN屏蔽

我试图掩盖"123-12-1234"到"XXX-XX-1234"的SSN.我能够使用下面的代码.

string input = " 123-12-1234  123-11-1235 ";

Match m = Regex.Match(input, @"((?:\d{3})-(?:\d{2})-(?<token>\d{4}))");

while (m.Success)
{
    if (m.Groups["token"].Length > 0)
    {
        input = input.Replace(m.Groups[0].Value,"XXX-XX-"+ m.Groups["token"].Value);
    }
    m = m.NextMatch();
}
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法使用Regex.Replace方法在一行中完成它.

regex

2
推荐指数
1
解决办法
7123
查看次数

正则表达式不适用于C#

我写了一个RegEx for password,它接受最小长度为5,最大长度为30的任何字符.

我试过以下表达式:

(\S){5,30}
Run Code Online (Sandbox Code Playgroud)

但它也接受超过30个字符的密码.如何确保它与此类密码不匹配?

.net c# regex

0
推荐指数
1
解决办法
201
查看次数

标签 统计

regex ×2

.net ×1

c# ×1