PHP将特定字符后的字符串删除为字符前的字符串

PHP将特定字符后的字符串删除为字符前的字符串,php,Php,注意“我想在之前替换”是可变句 结果将是“这是一个我想在文本3之前删除的文本2”这就是你想要的 $text= "This is a text1 i want to replace before # text2 i want to replace before # text3" Start point ="text1" End point = "#" Replace= "@@@@@@" 我在这里做的是找到字符串的位置$pos1和$pos2是开始和结束字符串的位置 然后计算这两个字符串之间的长

注意“我想在之前替换”是可变句 结果将是“这是一个我想在文本3之前删除的文本2”

这就是你想要的

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

Start point ="text1"
End point = "#"
Replace= "@@@@@@"
我在这里做的是找到字符串的位置$pos1和$pos2是开始和结束字符串的位置

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

最后只使用了常规substr_replace函数


希望这对您有所帮助。

欢迎。既然它解决了你的问题,你能接受这个答案吗@用户1130537
$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;