この正規表現を使用してドキュメントの小さなサブセットをキャプチャしようとしています。
preg_match('/href="(.+?)".+?>Keyword/s', $a, $b);
ただし、の直前をつかむのではなくhref=
、ドキュメントのKeyword
最初から始まり、まで下がっていきます。href=
Keyword
どうすればそれをバックトラックしてhref=
直前だけに保つことができKeyword
ますか?
この正規表現を使用してドキュメントの小さなサブセットをキャプチャしようとしています。
preg_match('/href="(.+?)".+?>Keyword/s', $a, $b);
ただし、の直前をつかむのではなくhref=
、ドキュメントのKeyword
最初から始まり、まで下がっていきます。href=
Keyword
どうすればそれをバックトラックしてhref=
直前だけに保つことができKeyword
ますか?
入力で、アンカータグで囲まれたテキストがタグと同じ行にある場合は、s
フラグを削除できます。
それ以外の場合は、より具体的な正規表現が必要です。
'/href="[^"]*"[^<>]*>Keyword/'
href
これは、内部のリンクにが含まれていないことを前提としています"
。は[^<>]
、他のタグが一致の一部になるのを防ぎます。
"
属性内にnoを含めることができると仮定すると、次のようにhref
して正規表現の調整を開始できます。
preg_match('/href="([^"]+?)".+?>Keyword/s', $a, $b);