Ⅰ 有关php 正则表达式替换的问题
$str = "哈哈@abc,@中国,@中国china,另一个哈哈@结尾没有逗号的";
$pattern = "/(@([^,,]+))([,,]?)|(@(.+))$/i"; //匹配以全角逗号或者半角逗号或者是串尾的
$replacement = '<a href="/id/$2">$1</a>$3';
$str = preg_replace($pattern, $replacement, $str);
echo $str;
Ⅱ php 正则表达式匹配一个字符串的多个值 然后逐一替换掉里面的 不全部替换成一个
举个例子给你看看是不是你想要的。
有个字符串“abcadeafg”,把其中的三个字母a分别替换成x,y,z:
$pattern=array('/a/','/a/','/a/');
$replacement=array('x','y','z');
$subject='abcadeafg';
$res=preg_replace($pattern,$replacement,$subject,1);
echo$res;//xbcydezfg
Ⅲ PHP正则表达式如何替换掉某字
<?php
$string='倚天屠龙记2019版粤语版';
$pattern='/版$/';
$replacement='';
echopreg_replace($pattern,$replacement,$string);
?>
$pattern='/版$/';正则表达式,匹配最后一个字是版.匹配第一个'版'。'/版/'。匹配所有的版'/版/g'。
$replacement='';用来替换的内容,去掉就是替换为空字符串。
更多需求查看php正则表达式教程网页链接
Ⅳ PHP 字符串替换 正则表达式 preg_match_all 方法
<?php
$a="floor(ceil(TC003*TC003)*price3+floor(20*(TC123+TC101))+(TC213+TC033)*tTC001000+pprice222+tc1)";
$out=preg_replace('/(?:TCd{3}|priced{1})(?!d)/i','1',$a);
echo'<pre>';
print_r($out);
//结果
//floor(ceil(1*1)*1+floor(20*(1+1))+(1+1)*tTC001000+pprice222+tc1)
Ⅳ PHP 随机 替换字符串问题
这个用
正则表达式
来解决就ok啦,PHP中有有关正则表达式的函数,其中有一个专门用来查找替换的函数:
preg_replace
($regpatern,$replace,$str[,$limit])
功能描述:在字符串
$str中查找匹配类型$repatern,匹配成功用$replace替换掉,最后一个参数是可选的,限制匹配多少次默认为-1,表示替换所有匹配成功的子字符串;
参数:$regpatern为正则表达式,$repalce为要替换成的字符串,$str查找的范围,$limit为替换的次数;
返回值
:替换后的字符串;
如:
?php
$regpatern='/a/';
$replace="b";
$str="aaadsfsfaaasdf";
echo
preg_replace($regpatern,$replace,$str,4);
?
运行结果为:bbbdsfsfbaasdf
Ⅵ PHP 正则表达式如何替换行末指定字符而不替换行首与行末相同的字符
<?php
$pattern='/DVD$/';
$str="灿烂人生DVD";
$str=preg_replace($pattern,'',$str);
var_mp($str);die;
?>
$匹配末尾的字符
Ⅶ PHP 正则表达式替换字符
$str="{235大吉大利abc}";
$str=preg_replace("/[a-z,A-Z,0-9]/","*",$str);//替换所有字母和数字为*
echo$str;
Ⅷ PHP正则表达式如何替换像这样的案例的
这个用正则表达式替换是比较简单的,因为有分隔符/,所以把分隔符后面的都替换掉就行了.
<?php
$str="龙门飞甲/龙门飞甲电视剧版";
$regex="~/.*?$~";
echo preg_replace($regex,"",$str);
?>
Ⅸ php中 正则表达式替换问题
查找
[^dw]
替换成