2016-10-12 6 views

答えて

3
それは sustr_replace方法によって行うことができる

$newString = substr_replace($oldString, $char_to_insert, $pos, 0); 

例:

echo substr_replace("09001200", ":", 2, 0); 

出力:09:001200

完全なコード:

$old = "09001200"; 
$new = substr_replace($old, ":", 2, 0); 
$new = substr_replace($new, " - ", 5, 0); 
$new = substr_replace($new, ":", 10, 0); 
echo $new; 
のような

出力:09:00 - 12:00

1

あなたが探している機能は、(文字列に文字列を挿入 )直接存在していませんが、あなたはsubstr_replace 機能でこれをシミュレートすることができます。ロジックは、文字列の与えられた 位置に長さゼロの部分を置き換えることです:

$new_str = substr_replace({original}, {string to insert}, {position}, 0); 

これは明らかに意志は、一度に1つの文字の上で動作します。そして、この の理由では、正規表現ベースの操作がより実用的になる可能性があります。ここpreg_replaceを持つ別の アプローチがある:

$new = preg_replace('/(\d\d)(\d\d)(\d\d)(\d\d)/', '$1:$2 - $3:$4, $input); 
+0

TYそんなに、私はにpreg_replaceを知っていたし、非常に実用的ではありませんでした。 –

関連する問題