preg_replace,只替换()中的模式部分?
很抱歉这个基本问题,但我一直在查看我能找到的有关 preg_replace 的所有信息,但我仍然无法弄清楚这一点..我有一个大字符串,例如这样:
$string= '# tjs { fassdaf } #fsk { fssf} # fskff { casf }';
当我这样做时,它替换了整个模式,而不仅仅是 ( ) 中的部分,正如我所期望的那样。我想知道如何替换 ( ) 中的部分。感谢
$pattern= '/#.*tjs.*\{.*(.*)\}/imsU';
$replacement= "test";
$return_string = preg_replace ($string, $pattern, $replacement );
预期的替换字符串:
'# tjs {test} #fsk { fssf} # fskff { casf }';
Sorry for this basic question, but I've been looking over all the info about preg_replace I can find and I still can't figure this out.. I have a large string, like this, for example:
$string= '# tjs { fassdaf } #fsk { fssf} # fskff { casf }';
And when I do this, it replaces the entire pattern, not just the part in ( ) as I expect it to do.. I am wondering how I can just replace the part in ( ).. thanks
$pattern= '/#.*tjs.*\{.*(.*)\}/imsU';
$replacement= "test";
$return_string = preg_replace ($string, $pattern, $replacement );
expected replaced string:
'# tjs {test} #fsk { fssf} # fskff { casf }';
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)