匹配关键字后如何删除所有内容?

时间:2012-02-14 16:57:26

标签: regex preg-replace preg-match php-5.3

如何在关键字匹配后使用preg_replace删除所有内容?

例如,如果关键字local在下面的字符串中匹配,

home/hello/local/flower/stone/...

然后只返回,

home/hello

或者我可以使用任何php默认数组函数吗?

2 个答案:

答案 0 :(得分:1)

根据您的想法,简单的strpos + strlen可以解决问题。

<?php

$string = "hello/local/flower/stone/...";
$keyword = "local";

echo substr($string, 0, strpos($string, $keyword));

?>

http://ideone.com/3OOq8

小心,我假设你总是在字符串中有你的关键字,可能不是这种情况。


<强>资源:

答案 1 :(得分:0)

<?php
$str = 'hello/local/flower/stone/...';
$find = 'local';
$replaced = preg_replace("#(.*?{$find}).*#", '$1', $str);
var_dump($replaced);
?>