preg_replace替换冒号和反斜杠

时间:2015-01-14 06:48:26

标签: php preg-replace

我正在努力实现以下目标:

$subject = 'string://example.com/';

$search1 = ':';
$search2 = '/';
$replace = '_';

期望的输出:

$string = string_example1.com_example.com_;

有没有办法用preg_replace来实现这个目标?

$string =  preg_replace(':', $replace, array($subject));

我知道这是不正确的,但我需要删除斜杠和冒号并用下划线替换,无论它们在哪里,只用下划线替换它

由于

4 个答案:

答案 0 :(得分:1)

我认为str_replace会更方便,如果您尝试替换特定字符,str_ireplace代表字符数组

修改

示例:

$subject= str_ireplace(array(':','/'),'_', $subject);

我认为会那样。

答案 1 :(得分:1)

INPUT:

$subject = 'string://example.com/';

$string = str_replace('___', '_', preg_replace('/[:\/]/', '_', $subject));

输出:

string_example.com_

希望这有助于

答案 2 :(得分:0)

试试这个。在您的模式中使用分隔符:

preg_replace('/(:\/\/|/\{1})/', '_', $subject);

答案 3 :(得分:0)

那是做什么的:

$subject = 'string://example.com/';
$string = preg_replace('~://|/~', '_', $subject);
echo $string,"\n";

<强>输出:

string_example.com_