首頁 >php教程 >PHP源码 >PHP正则匹配反斜杠''和美元'$'

PHP正则匹配反斜杠''和美元'$'

PHP中文网
PHP中文网原創
2016-05-25 17:06:241030瀏覽

$content = '1111111b6c5a531a458a2e790c1fd6421739d1c2222222575d6bb386bc4a289a13a24a085e726e3$'; 

//' \\\\\/ ' 第1个'\'转义字符串的第2个'\',字符串为'\' 
//第3个'\'转义第4个'\',相当于 字符串 '\' 
//第5个'\'转义第4个'/',相当于 字符串 '/' 
//字符合起来为'\\/' 两个'\\' 正则表达式看做'\' 
$pattern = '/b6c5a531a458a2e790c1fd6421739d1c([0-9]{7,})2b1569e15bdb00ab0b443626d9691226\d\\$$/'; 

上面方法out了,使用\Q \E,具体东西看评论

1.test.php

<?php
 
$content = &#39;1111111<td>2222222<\/td>3$&#39;;
 
//&#39;\\\\\/&#39; 第1个&#39;\&#39;转义字符串的第2个&#39;\&#39;,字符串为&#39;\&#39; 
//第3个&#39;\&#39;转义第4个&#39;\&#39;,相当于字符串&#39;\&#39; 
//第5个&#39;\&#39;转义第4个&#39;/&#39;,相当于字符串&#39;/&#39; 
//字符合起来为&#39;\\/&#39; 两个&#39;\\&#39; 正则表达式看做&#39;\&#39; 
$pattern = &#39;/<td>([0-9]{7,})<\\\\\/td>\d\\$$/&#39;;
 
$result = preg_match_all($pattern, $content, $match_result);
     
if($result)
    print_r($match_result);
else
    echo("not match");

2.php代码

$content = &#39;1111111<td>2222222<\/td>3$&#39;; 
$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
        )
 
)
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn