php正则替换

WBOY
Lepaskan: 2016-06-23 13:42:20
asal
909 orang telah melayarinya

$array = array('aaa','bbbbbb','cccccc','ddddddddddd');
$str = 'abcdej{$array}jdijij';

$str = preg_replace("/^\{\$(.*?)\}$/i",'print_r(\\1);',$str);
print_r($str);

如何替换成 {print_r($array)}    正则怎么写??
还有 for while foreach 等正则该怎么写???


回复讨论(解决方案)

$str = 'abcdej{$array}jdijij';$str = preg_replace('/\{(\$.+?)\}/', '<?php print_r(\\1);?>', $str);echo $str;
Salin selepas log masuk
abcdejjdijij

规则串用双引号括起时要
$str = 'abcdej{$array}jdijij';$str = preg_replace("/\{(\\\$.+?)\}/", '<?php print_r(\\1);?>', $str);echo $str;
Salin selepas log masuk

\\$ 和 \\\$  结果是一样的,我知道\ 是转义,但是两个就行了,但是很多地方都写得是三个,这是为什么?

这是测试得来的,比如我的环境就得写3个

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan