2017-01-11 2 views
0

を(好ましくにpreg_replaceを使用して):私のように別の文字列を持っているABSOLUTEWORKLEADSTOSUCCESS別の文字列の複数のインデックスに文字列を挿入します。私のように文字列を持っている

'+'

今どのように私はさまざまなインデックスで2番目の文字列は、の(3,6,9)を言うことができます挿入することができます最初の文字列。

PS:私はsubstr()を使ってそれを行う方法を知っています。私は何を探していますと、何か使って正規表現/にpreg_replace()である

答えて

1

免責事項:正規表現とpreg_replace機能を使用して、特定の指標にプラス記号を挿入します:

私は以下のソリューションは愚かであるが、それはあなたが求めるまさにんだと思います
<?php 

// find 3 groups: three first symbols, two after them, and two more 
// find the pattern from the beginning of a string 
$regex = '/^(.{3})(.{2})(.{2})/'; 
$str = 'ABSOLUTEWORKLEADSTOSUCCESS'; 

// perform a replace: use first group (3 symbols), insert a plus 
// then use a second group (2 symbols) and insert another plus, 
// then use a third group (2 more symbols) and insert the last plus 
$out = preg_replace($regex, '$1+$2+$3+', $str); 
echo $out; 

プレビューhere

0

あなたはそのためにあなたは、インデックスをループする必要があり、にpreg_replaceで文字列を挿入し、

に従うようsubstr_rplaceを使用して、特定されたインデックスの2番目の文字列を挿入することはできません
$var = 'ABSOLUTEWORKLEADSTOSUCCESS'; 
$indexes = array(3,6,9); 
$newString = $var; 

foreach($indexes as $key=>$value) { 
    $newString = substr_replace($newString, '+', $value+$key, 0) . "\n"; 
} 
echo $newString; 
ここ

チェック出力:https://eval.in/714177

関連する問題