我有一个包含长HTML内容的字符串,如:
<TABLE cellPadding=3 width=100%><td><font class=btime>20:53</font> <a href=news2.php?st=1414691580 target=right>Кыргызстан: понастроили мечетей.., - Омор Рысбаев</a><br><font class=btime>20:50</font> <a href=news2.php?st=1414691400 target=right>Исламская Изида: как джихадисты вынуждают западные компании менять названия</a><br><font class=btime>20:48</font> <a href=news2.php?st=1414691280 target=right>Не прошло и двух лет. Российский летчик Петренко освобожден из плена талибов в Афганистане</a><br><font class=btime>19:58</font> <a href=news2.php?st=1414688280 target=right>Игорь Стрелков объявил о создании общественного движения "Новороссия"</a><br><font class=btime>19:27</font> <a href=news2.php?st=1414686420 target=right>Давление США на Россию будет только нарастать. Зачем Путин дал слабину? - Гао Фэн</a><br><font class=btime>19:21</font> <a href=news2.php?st=1414686060 target=right>Путин не знает страны, в которой живет. Тайга давным-давно полыхает.., - Э.Ханымамедов</a><br><font class=btime>19:11</font> <a href=news2.php?st=1414685460 target=right>Протестующие в Буркина-Фасо подожгли парламент, пытаясь свернуть бессменного (с 1987) президента Блэза Компаоре</a><br><font class=btime>18:37</font> <a href=news2.php?st=1414683420
我试图从中提取所有新闻ID并将其写入数组中。正如您所看到的,所有ID都放在&#34;?st =&#34;之间。和&#34;目标&#34;标记。非常感谢建议解决此任务的最佳方法。谢谢。
答案 0 :(得分:0)
在preg_match_all
函数中使用以下正则表达式获取所有ID的数组
\?st=\K\S+(?=\s*target|$)
如果您不想提取后跟字符串target
(最后一个ID )的ID,请从中删除|$
上面的正则表达式。
\?st=\K\S+(?=\s*target)