のは、私はこのようになり、データベース内のHTMLを持っているとしましょう:PHPの正規表現の否定
Hello world!
<a href="https://www.youtube.com/watch?v=m7t75u72vd">ABC</a>
Blah blah blah...
https://www.youtube.com/watch?v=df82vnx07s
Blah blah blah...
<p>https://www.youtube.com/watch?v=nvs70fh17f3fg</p>
今、私は2番目と3番目のURLをつかむが、最初のを無視するPHPの正規表現を使用します。
私がこれまで持っている正規表現式は次のとおりです。
\s*[a-zA-Z\/\/:\.]*youtu(be.com\/watch\?v=|.be\/)([a-zA-Z0-9\-_]+)
それはかなりうまく動作しますが、私はそれが/除外するURLの最初のタイプで始まり、1を否定作る方法がわからない:HREF !=」
助けてください、ありがとう
それらのそれぞれを検索し、(最終的に)新しいリンクノードを作成し、その後、(リンクを避けて)最初のDOMDocument/DOMXPathを使うことの最大のテキストノードを抽出します。 –
preg_matchを使ってPHPですべてをやりたいのですが、HTMLがデータベースにあり、コードがすでに構造化されているからです。 – liquidgraph
正規表現を使用してHTMLを解析しないでください。 http://php.net/DomDocument – miken32