我想使用正则表达式验证器来确保某个字符串变量包含子串"www.youtube.com/watch?v="
,我该怎么做?
[RegularExpression()]
[Required(ErrorMessage = "Youtube link is Required")]
[StringLength(100, ErrorMessage="Youtube link cannot exceed 50 characters")]
public string YoutubeLink { get; set; }
答案 0 :(得分:3)
if (YoutubeLink.Contains("www.youtube.com/watch?v="))
{
//...
}
http://msdn.microsoft.com/en-us/library/dy85x1sa.aspx
要使用RegularExpression属性,必须指定要使用的正则表达式:
[RegularExpression("www\\.youtube\\.com/watch\\?v=", ErrorMessage = "Link is incorrect")]
public string YoutubeLink { get; set; }
我认为你可能想要的是检查任何类型的URL开头。在这种情况下,您可以使用@"^(http://)?(www\.)?youtube\.com/watch\?v="
作为正则表达式字符串。
答案 1 :(得分:0)
使用像(Python)这样的东西可能更容易:
ytlink = 'www.youtube.com/watch?v='
if(ytlink in yourfrase):
doYourLogic()
else:
smthElse()
如果我理解你的问题,请纠正我。