1

問題があります。非常に複雑な動的文字列で値を取得したいと思います。これは文字列です

<['pritesh:name:nilesh:replace']>

これは動的な文字列であり、名前を取得してこの文字列の変数値を置き換えたいと思います。

4

3 に答える 3

1
$exploded = explode(':', $string);
$exploded[1] = $replacement;
$string = implode(':', $exploded);
于 2012-11-28T13:59:54.357 に答える
1

文字列の形式については正確にはわかりませんが、ここで説明します。

explode区切り文字付きの文字列を配列に変換するために使用できます。次に、値を変更して、「:」などで区切られた形式に戻すことができます。これを行うには、 :joinのエイリアスであるを使用します。implode

<?php
// initialize variable and print it
$s = "pritesh:name:nilesh:replace";
print("{$s}\n");

$s = explode(":", $s); // convert to array
$s[1] = "anotherName"; // change value

// convert back to foo:bar form and print
$s = join($s, ":");
print("{$s}\n");
?>

それをファイルに入れてexample.php、コマンドラインで実行します。

$ php -q example.php
pritesh:name:nilesh:replace
pritesh:anotherName:nilesh:replace

誰かが言ったように、より高度なフォーマットを処理する必要がある場合は、PHPで正規表現を使用する方法を学ぶ必要があります。

お役に立てば幸いです。

于 2012-11-28T14:03:32.920 に答える
0

文字列がと呼ばれる変数に格納されていると仮定すると、次のよう$stringになります。

$parts = explode(':', $string);

// this will mean that
// $parts[0] contains pritesh, $parts[1] = name, $parts[2] = nilesh and $parts[3] =  replace

// therefore
$name = $parts[0];
$replace = $parts[2];
于 2012-11-28T14:03:10.680 に答える