ホームページ  >  記事  >  バックエンド開発  >  preg_match_all() は通常のデータを受け取りますが、最後の数値が欠落しているのはなぜですか?

preg_match_all() は通常のデータを受け取りますが、最後の数値が欠落しているのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 14:25:031393ブラウズ

preg_match_all('/id=(.*)[0-9]/', 'http://www.baidu.com/go.htm?spm=a1z10.1.w5003-4193336463.1.aoWyoL&id= 35468681941&scene=baidu_session' , $id);

URL の ID 値を取得したい。
上記の方法では 1 が足りない 3546868194 のみを取得できます。どうしてこれなの?


ディスカッションへの返信(解決策)

こんな風に書いても大丈夫です、皆さんありがとうございます。
preg_match_all('/id=(d+)/',

まあ、変更方法だけは知っていますが、理由はわかりません... 数字だけを一致させたい場合は、単に /id=[0- 9]*/ La,
/id=(.*)[0-9]/これはめちゃくちゃです、パターン単位まで使用されています..

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。