-2

以下のコードで:

<a href="http://example.com/yadayada" yada-yadayada="/yada/yadayada/yadayada.php?x=12345&amp;yadayadayasomehtmltagandgiberishtexthere

x=前と後のすべてを削除する正規表現をphpで作成するにはどうすればよい&amので、値12345は単なる例ですが、実際にはさまざまです。

4

3 に答える 3

3

以下を使用して URL 全体を抽出したと仮定しますDOMDocument

// $url = '/yadayada?x=12345&y=7890';
parse_str(parse_url($url, PHP_URL_QUERY), $arr);
echo $arr['x'];

以下も参照してください。parse_url() parse_str()

于 2013-07-26T22:28:10.040 に答える
1

\d数字 [0-9] に一致する単純なものを使用:

$text = '<a href="http://example.com/yadayada" yada-yadayada="/yada/yadayada/yadayada.php?x=12345&amp;yadayadayasomehtmltagandgiberishtexthere';
preg_match_all("#x=(\d+)(&amp;|&)#", $text, $match);
print_r($match[1]);//12345

更新:パターンがに変更されましたx=(\d+)(&amp;|&)

于 2013-07-26T21:59:36.607 に答える
0

@Akamと@Herbertsのヘルプを使用して解決しました。

preg_match_all("#x=(\d+)&#", $url, $match); print_r($match[1]);

みんなありがとう!

于 2013-07-26T23:25:39.927 に答える