PHP / Python将第一个字符串替换为另一个字符串

时间:2013-08-28 20:45:55

标签: php python regex string output

我正在尝试用“空格”替换第一个“:”,我不知道如何做到这一点! 也许你们可以帮助我。

在文字中:

ab:cd:ef:gh:ij:kl:mn
12:ab:c2:f3 303:mx:
dk:ad:Y4:D3
12:31:44:aC:210 sda:

输出将是:

ab cd:ef:gh:ij:kl:mn
12 ab:c2:f3 303:mx:
dk ad:Y4:D3
12 31:44:aC:210 sda:

也许你可以帮助我。

提前致谢

3 个答案:

答案 0 :(得分:1)

你可以在php中使用:

$result = preg_replace('~^[^:]*\K:~m', ' ', $text); 

其中:

[^:]表示:

以外的所有字符

\K之前重置所有匹配。

m代表多线模式(开始的^意味着线的开始而不是默认的开始串

答案 1 :(得分:1)

在python中,

a = 'ab:cd:ef:gh:ij:kl:mn'
a = a.replace(':', ' ', 1)

产量

ab cd:ef:gh:ij:kl:mn

答案 2 :(得分:0)

这样的东西应该适用于PHP:

$output = preg_replace("/(^.*?):/m", "$1 ", $input);

将用空格替换每行上的第一个:

例如:

$input = "ab:cd:ef:gh:ij:kl:mn
12:ab:c2:f3 303:mx:
dk:ad:Y4:D3
12:31:44:aC:210 sda:";
print "<pre>$input</pre>";
print "--------------------";

$output = preg_replace("/(^.*?):/m", "$1 ", $input);

print "<pre>$output</pre>";

将输出

ab:cd:ef:gh:ij:kl:mn 
12:ab:c2:f3 303:mx: 
dk:ad:Y4:D3 
12:31:44:aC:210 sda:
--------------------
ab cd:ef:gh:ij:kl:mn 
12 ab:c2:f3 303:mx: 
dk ad:Y4:D3 
12 31:44:aC:210 sda: