我想检查我的字符串变量是否包含特定的正则表达式模式
使用c#XXX-XXX
(x是数值)。如果它包含,那么我需要返回true或false。
任何人都可以帮我解决这个问题..
答案 0 :(得分:2)
使用Regex.IsMatch()
返回的值。
Regex regex = new Regex("[0-9]{3}-[0-9]{2}-[0-9]");
bool containsPattern = regex.IsMatch(stringToVerify);
答案 1 :(得分:0)
这是你正在寻找的正则表达式
\b\d{3}-\d{2}-\d\b
\b
是一个边界。如果你不使用它,你也会匹配我想你不想匹配的111-22-345
或111-22-3-33
答案 2 :(得分:-2)
using System.Text.RegularExpressions;
public static bool ControlRegex(string input)
{
Match match = Regex.Match(input, @"([A-Za-z0-9\-]+)",RegexOptions.IgnoreCase);
if (match.Success)
{
return true;
}
}
你可以试试这样的东西......你必须把正确的正则表达式放到Regex.Match的secend参数中......
您可以使用正则表达式程序找到正确的正则表达式。例如“RegEx TestBed”,你可以从这里下载; http://regextestbed.codeplex.com/releases/view/60833使用此程序,您将文本放在文本区域中,并在模式区域中尝试找到正确的正则表达式。在下面的列表区域,程序会根据您的正则表达式显示匹配项,因此您可以尝试找到正确的正则表达式...