$content = '1111111b6c5a531a458a2e790c1fd6421739d1c2222222575d6bb386bc4a289a13a24a085e726e3$';
//' \\\\\/ ' 第1个'\'转义字符串的第2个'\',字符串为'\'
//第3个'\'转义第4个'\',相当于 字符串 '\'
//第5个'\'转义第4个'/',相当于 字符串 '/'
//字符合起来为'\\/' 两个'\\' 正则表达式看做'\'
$pattern = '/b6c5a531a458a2e790c1fd6421739d1c([0-9]{7,})2b1569e15bdb00ab0b443626d9691226\d\\$$/';
上面方法out了,使用\Q \E,具体东西看评论
1.test.php
<?php $content = '1111111<td>2222222<\/td>3$'; //'\\\\\/' 第1个'\'转义字符串的第2个'\',字符串为'\' //第3个'\'转义第4个'\',相当于字符串'\' //第5个'\'转义第4个'/',相当于字符串'/' //字符合起来为'\\/' 两个'\\' 正则表达式看做'\' $pattern = '/<td>([0-9]{7,})<\\\\\/td>\d\\$$/'; $result = preg_match_all($pattern, $content, $match_result); if($result) print_r($match_result); else echo("not match");
2.php代码
$content = '1111111<td>2222222<\/td>3$'; $pattern = "!<td>(\d{7,})<\Q\/\Etd>\d\Q$\E!"; $result = preg_match_all($pattern, $content, $m); if($result) print_r($m); else echo("not match");
3.output.txt
Array ( [0] => Array ( [0] => <td>2222222<\/td>3$ ) [1] => Array ( [0] => 2222222 ) )