我正在尝试匹配下面显示的部分并从html文件中删除它,使用正则表达式没有成功,我对如何使用php解析器匹配此部分并且替换它知之甚少。
<table width='100%' class='print_only_wrapper'>
<thead class='print_only_header'>
<tr>
<td align='right' class='print_only_wrapper'>
SOME TEXT
</td>
</tr>
</thead>
<tbody>
<tr>
<td>
这是我试图搜索字符串并替换它
if(preg_match("/<thead/", $html)) {
$string_2_replace="/(<table width='100%' class='print_only_wrapper'>)\s+(<thead class='print_only_header'><tr><td align='right' class='print_only_wrapper'>).+(</td></tr></thead>)\s+(<tbody><tr><td>)/";
$html = str_replace($string_2_replace, "", $html);
}
答案 0 :(得分:0)
简单易行,
\w
- 匹配带有特殊字符的字母
\W
- 没有特殊字符的非字母
所以你试试这个
<table[^>]*?>[\w\W]*?<\/td>$
尝试$string_2_replace
。
然后回复我......
答案 1 :(得分:0)
所以最后我明白了!
这是有效的$ string_2_replace
$string_2_replace = '#<table.*?<thead.*?</thead>#';