下面舉了三個實現來介紹在php正則替換中變量的指定字符,有需要學習的機友可參考參考。
三種方法.
1.
代碼如下 復制代碼<?php
$str = preg_quote('(銀子)');
$txt = '我的呢稱(銀子)';
echo preg_replace("/($str)/","<span style='color:#f00;'>$1</span>",$txt);
?>
2.
代碼如下 復制代碼<?php
$str = quotemeta('(銀子)');
$txt = '我的呢稱(銀子)';
echo preg_replace("/($str)/","<span style='color:#f00;'>$1</span>",$txt);
?>
3.
代碼如下 復制代碼 <?php三種方法都返回同樣結果.. PHP中的Perl風格正則與Perl完全一樣.連quotemeta也是通用的..
一些其它關於正則的實例
例子:
代碼如下 復制代碼$text = “foobar123fooabcbar”;
$text = preg_replace(“/foo(?=bar)/”, “***”, $text);
//匹配bar前面的位置 ***bar123fooabcbar
代碼如下 復制代碼
$text = “foobar123fooabcbar”;
$text = preg_replace(“/(?<=bar)123/”, “***”, $text);
//匹配bar後面的位置 foo***123fooabcbar
代碼如下 復制代碼
$text = “foobar123fooabcbar”;
$text = preg_replace(“/foo(?!bar)/”, “***”, $text);
//匹配後面跟的不是bar的位置 foobar123***abcbar
代碼如下 復制代碼
$text = “foobar123fooabcbar”;
$text = preg_replace(“/(?<!foo)bar/”, “***”, $text);
//匹配前面不是foo的位置 foobar123fooabc***