如何在PHP中使用正则表达式从标签中获取pc或dc?

时间:2013-11-22 15:45:29

标签: php regex

在页面中有很多次此标记

<div class="clsfd_thumb_container pc">

和此标记

<div class="clsfd_thumb_container dc">

唯一的区别是pcdc

我想要做的是保存一个匹配的所有pcdc数组并回显它们。

我唯一需要的是匹配所有pcdc的正则表达式。

我该怎么办?谢谢。

2 个答案:

答案 0 :(得分:2)

尝试以下方法:

[pd]c(?=">)
  • [pd]:匹配pd
  • c:当然,匹配c
  • (?=">):如果跟随"然后>,则onles与我上面列出的匹配。

在PHP中,您可以使用preg_match_all()提取所有匹配项,将上面的正则表达式作为第一个参数中的字符串传递。

preg_match_all('/[pd]c(?=">)/', $str, $dealers);
                ^           ^

Regex101 Demo

答案 1 :(得分:1)

你真的不需要正则表达式,你可以使用strpos

if(strpos($div_tag, 'dc') || strpos($div_tag, 'pc')) {
    $array[] = $div_tag;
}