我有以下正则表达式字符串:
(@Model.[a-z]*)
我正在尝试使用它从剃须刀视图电子邮件中提取某些值。 所以我们可以有以下值:
我希望以下代码在列表中返回这些值:
Regex.Matches(emailString, "@Model.[a-z]*").Cast<Match>().Select(match => match.Value)
相反,我只是得到一个相同值的列表“@Model”。 我在这里缺少什么?
答案 0 :(得分:3)
值可以包含小写和大写,因此正则表达式应为:
(@Model\.[a-zA-Z]*)
...或者您可以选择RegexOptions.IgnoreCase
选项,但这也适用于Model
部分。
答案 1 :(得分:0)
您应该考虑不区分大小写的方法:
INNER JOIN table t2 ON (@id IS NULL OR ((@id IS NOT NULL) AND (t2.id = @id)))
答案 2 :(得分:0)
如果您正在使用Razor。
然后考虑不将@Model放在引号内
EG
Regex.Matches(emailString, "@Model.[a-z]*", RegexOptions.IgnoreCase)
而不是像这样使用它
Regex.Matches(emailString, Model + ".[a-z]*", RegexOptions.IgnoreCase)