如何在href属性中找到缺少协议的HTML链接?

时间:2012-02-14 17:25:39

标签: php regex preg-match-all

我正在尝试找到错误编写的链接:

<a href="mydomain.com">link</a>

我有这个正则表达式:

href *= *"? *(?!http|https|ftp)

但如果不起作用......任何想法?

由于

1 个答案:

答案 0 :(得分:1)

使用GNU grep

% echo '
<a href="http://mydomain.com">link</a>
<a href="https://mydomain.com">link</a>
<a href="ftp://mydomain.com">link</a>
<a title="My Domain"
   href="mydomain.com">link</a>
' | grep --perl -o 'href[[:space:]]*=[[:space:]]*"(?!(ht|f)tps?://)[^"]+"'
href="mydomain.com"