我已经尝试创建我需要的正则表达式,但即使在半小时后我仍然没有成功。
正则表达式应该是这样的:
hey
字符串,后跟任意字符(也是新行),以第一个</div>
字符串结束。
我已经尝试过这样做但是当我在hey
字符串之后允许任何内容时,它变得太贪婪并且返回一个包含hey
的匹配以及之后的任何内容,而不是给我多个匹配用</div>
完成。
感谢您的帮助。
答案 0 :(得分:5)
这会有用吗?试一试。
。*?意味着任何长度的非贪婪
hey.*?'
答案 1 :(得分:1)
craig1231是正确的,?
后*
使正则表达式非贪婪。我不确定你的意思是什么:
第一次出现“”字符串
如果那应该是2个双引号,那么在C#中尝试这样的事情:
try {
if (Regex.IsMatch(subjectString, "hey.*?\"\"", RegexOptions.Singleline)) {
// Successful match
} else {
// Match attempt failed
}
} catch (ArgumentException ex) {
// Syntax error in the regular expression
}
RegexOptions.Singleline
是必要的,因为您还想捕获换行符等。
答案 2 :(得分:0)
我终于设法创建了所需的正则表达式:
哎((\ S)|。())?*
我的态度有点不对,因为如果我想找到第一次出现的东西,我应该简单地写一下,但是我感谢craig1231让我知道如何懒得做。