带有特殊字符的PHP preg_replace函数错误

时间:2012-03-20 20:51:27

标签: php regex

我正在尝试使用preg_replace函数在Html页面中解析此表:

Tuition.    $13,140   $13,167    $13,167    
Books       $996      $1,176     $1,176

由于表格标记,我收到了“未知修饰符't'”错误,并将“/ /”更改为“~ ~”。

我还有问题,功能是不改变文字。我认为“$”美元的问题在文中签名,我该如何跳过它?我试过,但我做不到。

这是我的代码:

$price = $html->find('div[id=divctl00_cphCollegeNavBody_ucInstitutionMain_ctl00] table[class=tabular]');

        $price1=$price[0];
        $show=$price1;

        $ch="~".$show->children(1)->children(0)->children(1)."~";
        $show=preg_replace($ch,' ',$show, 1);

谢谢

1 个答案:

答案 0 :(得分:2)

试试这个:$show=preg_replace(str_replace('$','\$',$ch),' ',$show, 1); 如果你不能使用preg_quote并且有多个转义(在这种情况下$是你的问题),你可以把你的特殊字符放在一个数组中并从中过滤。