いつもお世話になっております。
早速本題に入らせていただきます。
本日悩んでいるコードは以下となります。
PHP
1$regex = '!href=".+"!'; //この正規表現 2preg_match_all($regex, $text, $match); 3var_dump($match);
正規表現を使用して、HTMLタグの中に含まれる href="" 部分のみを取得しようとしています。
取得してみた結果が以下となります。
PHP
1array(1) { 2 [0]=> 3 array(10) { 4 [0]=> 5 string(99) "href="http://***.php?id=10290"><span lang="EN-US"" 6 [1]=> 7 string(84) "href="http://***.pdf"" 8 [2]=> 9 string(114) "href="http://***.pdf"><u><span lang="EN-US" style="" 10 } 11} 12 13// *** 部分は伏せるために置き換えたものです
開始部分のhref=" は上手くとれていますが、
終了部分が上手く判定できていないようで、 style=" や、 <u> など
別のタグまで取れてしまっています。
どうにも正規表現が苦手で調べても上手く行かず...
お時間ある方いらっしゃいましたらご助力頂けますと幸いです。

回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/21 09:17