[英]Regex for pattern
仅选择以#####开头并以mysig结尾的字符串 。 在这两个之间,不允许任何内容,但html标记则不允许。 字符串s =“ #####任何mysig和 #####任何anysig任何#####任何mysig ”;
一个以othersig结尾的不应该被选中
这是我想要的
字符串str =“ #####这里的任何东西/ My(sig_nature) /这里的任何东西#####这里的任何东西/ Notmine(sig_nature) /这里的任何东西#####这里的任何东西/ My(sig_nature) /”;
我想要的是所有以#####开头并以/ My(sig_nature) /
foreach(在Regex.Matches(str,@“ [#] {5}。* / ** My(sig_nature)** /”)中匹配匹配)Console.WriteLine(match.Value.toString());
试试这个:
Regex.IsMatch(strInput, @"^#####[^<>]+mysig$");
说明:
^ the beginning of the string
##### '#####'
\.+ '.' (1 or more times (matching the most amount possible))
mysig 'mysig'
$ before an optional \n, and the end of the string
尝试一下(很多猜测工作都涉及到这一点):
#####(?:(?!mysig|#####)[^<>])*mysig
这从#####
到它可以找到的最接近的mysig
匹配,但mysig
它们之间没有#####
并且之间没有尖括号(因此也没有HTML标记)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.