0

我正在编写一个用于匹配代码的 php,使用 preg 匹配所有标签。

这是我的php代码。

  preg_match_all('|SentSmsId(\d*?)&noOfMessages|i', $data, $code);

回声“$代码”;

这是html代码。

<a href="sentSms.php?zxcoiesesscd=&SentSmsId=8830978&NoOfMessages=" style="text-decoration:none;" 

我想匹配 sentsmsid 代码并回显它。

但不工作。

怎么了 ?

4

3 回答 3

0

=你在你的正则表达式中丢失了,

preg_match_all('|SentSmsId=(\d*?)&noOfMessages|i', $data, $code);
print_r($code);

工作演示。

于 2013-05-12T16:10:13.073 回答
0

您需要考虑 =

例如 SentSmsId\=(\d*?)&noOfMessages

于 2013-05-12T16:10:29.970 回答
0

这是当您在 $data 中包含多个代码时:

preg_match_all('~SentSmsId=\K\d++(?=&noOfMessages)~', $data, $codes);

print_r($codes);

但是,如果您只查找 1 个代码,则最好使用 preg_match 代替。

于 2013-05-13T05:22:25.117 回答