在我的C#代码中,我有一个像这样的列表
public static List<string> Teachers_Group = new List<string>
{
"-RO-ANSATTE","-RO-GJESTEANSATTE"
};
我的linq查询中有一个where子句,我在那里检查
bool amITeacher = domainUser.Groups.Where(k => Helpers.Constants.Teachers_Group.Any(k.FullName.Contains)).Any();
现在我要检查要检查的字符串是否具有类似的模式
XXX-RO-ANSATTE
这意味着我需要检查组名是否也包含三个字母.我认为我需要使用正则表达式,但无法入门.
有什么帮助吗?
最佳答案
我已将您的Linq Expression更改为使用Regex
bool amITeacher = domainUser.Groups.Where(k =>
Helpers.Constants.Teachers_Group.Any(t =>
Regex.IsMatch(k,@"^[A-Za-z0-9]{3}\" + t + "$")))
.Any();