preg_replace 替换冒号和反斜杠
preg_replace replace colon and back slash
我正在努力实现以下目标:
$subject = 'string://example.com/';
$search1 = ':';
$search2 = '/';
$replace = '_';
期望的输出:
$string = string_example1.com_example.com_;
有什么方法可以用 preg_replace 实现吗?
$string = preg_replace(':', $replace, array($subject));
我知道这是不正确的,但我需要删除斜杠和冒号并用下划线替换,无论它们在哪里,都只用下划线替换它
谢谢
我认为 str_replace
会更方便,如果您要替换特定字符,str_ireplace
用于字符数组
编辑
示例:
$subject= str_ireplace(array(':','/'),'_', $subject);
我觉得会是这样。
试试这个。在您的模式中使用定界符:
preg_replace('/(:\/\/|/\{1})/', '_', $subject);
输入:
$subject = 'string://example.com/';
$string = str_replace('___', '_', preg_replace('/[:\/]/', '_', $subject));
输出:
string_example.com_
希望对您有所帮助
这就是我要做的:
$subject = 'string://example.com/';
$string = preg_replace('~://|/~', '_', $subject);
echo $string,"\n";
输出:
string_example.com_
我正在努力实现以下目标:
$subject = 'string://example.com/';
$search1 = ':';
$search2 = '/';
$replace = '_';
期望的输出:
$string = string_example1.com_example.com_;
有什么方法可以用 preg_replace 实现吗?
$string = preg_replace(':', $replace, array($subject));
我知道这是不正确的,但我需要删除斜杠和冒号并用下划线替换,无论它们在哪里,都只用下划线替换它
谢谢
我认为 str_replace
会更方便,如果您要替换特定字符,str_ireplace
用于字符数组
编辑
示例:
$subject= str_ireplace(array(':','/'),'_', $subject);
我觉得会是这样。
试试这个。在您的模式中使用定界符:
preg_replace('/(:\/\/|/\{1})/', '_', $subject);
输入:
$subject = 'string://example.com/';
$string = str_replace('___', '_', preg_replace('/[:\/]/', '_', $subject));
输出:
string_example.com_
希望对您有所帮助
这就是我要做的:
$subject = 'string://example.com/';
$string = preg_replace('~://|/~', '_', $subject);
echo $string,"\n";
输出:
string_example.com_