2017-05-03 21 views
-1
$text= "This is a text1 i want to replace before # text2 i want to replace 
before # text3" 

Start point ="text1" 
End point = "#" 
Replace= "@@@@@@" 

注“我想之前更换”多变句话 结果将是“这是一个@@@@@@文本2我想#文字3之前删除”PHP某个字符后,取出串字符前

回答

0

这是你想要的

$mystring = "This is a text1 i want to replace before # text2 i want to replace before # text3"; 

$start = "text1"; 
$end = "#"; 
$replace= "@@@@@@"; 

$pos1 = strpos($mystring, $start); 
$pos2 = strpos($mystring, $end, $pos1); 

$length=$pos2+ strlen($end) - $pos1; 

$result = substr_replace($mystring,$replace,$pos1,$length); 
echo $result; 

我在这里做的是找到字符串位置。 $ pos1 & $ pos2是您的开始和结束字符串的位置。

然后计算这两个字符串之间的长度,其中strlen($ end)是结束字符串的长度(以便我们也可以抓取结束字符串)。

最后只是使用了常规的substr_replace函数。

希望这可以帮助你。

+0

谢谢,它解决了我的问题 – user1130537

+0

欢迎。既然它解决了你的问题,请你接受答案。 @ user1130537 –

相关问题