在第一个字符比赛停止?
这个问题在这里已经有了答案:
+
是一个贪婪的运算符,意味着它尽可能匹配,并且仍然允许其余的正则表达式匹配。 对于这一点,我建议使用否定的类含义的任何字符,除了: "
‘一个或多个’时代。
/<a href="ftp:([^"]+)">/
现场演示
使你的正则表达式不太合理:
/<a href="ftp:(.+?)">/
// here __^
要么:
/<a href="ftp:([^>"]+)">/
但最好使用解析器。
*
, +
是绿色的(尽可能匹配)。 通过追加?
在他们之后,你可以做出非贪婪的。
/<a href="ftp:(.+?)">/
或者你可以指定排除"
使用否定字符类( [^...]
):
/<a href="ftp:([^"]+)">/
顺便说一下,使用正则表达式来解析HTML并不是一个好主意。
链接地址: http://www.djcxy.com/p/76899.html