如何从 PHP $var 中删除子字符串?

How to remove substring from PHP $var?

当使用 PHP 时,如何删除 $var 中两个正斜杠之间的字符?

我试过了:

$test = "gdgfdgdf/asg8&7_09()9/87iuyiuuyty";
$test = str_replace('/\s+/', '_', $test);

注意/asg8&7_09()9/是动态数据。

不幸的是,这没有给出预期的结果。如何使用 PHP?

完成此操作

你的问题不是很清楚你是想删除斜线之间的内容,还是删除斜线之间的内容。

$test = "gdgfdgdf/asg8&7_09()9/87iuyiuuyty";
$test = preg_replace( '/\/.*?\//', '_', $test );
print_r( $test );

结果

gdgfdgdf_87iuyiuuyty

此代码删除斜杠及其内容。为了使斜杠在处理后继续存在,您可以进行替换 '/_/'

$test = preg_replace( '/\/.*?\//', '/_/', $test );

结果

gdgfdgdf/_/87iuyiuuyty


在匹配模式中

. Match any character (except newline)
* Match 0 or more times

Regex Pal demonstration

使用 preg_replace 因为它是动态数据。

$test = "gdgfdgdf/asg8&7_09()9/87iuyiuuyty";
$test = preg_replace("/\/(.*?)\//",'_',$test);

会 return "gdgfdgdf_87iuyiuuyty"