web-dev-qa-db-ja.com

PHPで文字列からブラケットを削除する方法は?

次の文字列があり、括弧を削除するためにstr_replaceまたはpreg_replaceを使用したいのですが、方法がわかりません。 str_replaceを使用して開始ブラケットを削除できましたが、終了ブラケットを削除できません。

これはおとりです:

$coords = '(51.50972493425563, -0.1323877295303646)';

私が試してみました:

<?php echo str_replace('(','',$coords); ?>

開始ブラケットは削除されましたが、両方を削除するにはpreg_replaceが必要だという印象を受けました。

これをどうやってやるの?

感謝してください

13
hairynuggets

試してみてください:

str_replace(array( '(', ')' ), '', $coords);
47
hsz

大括弧が常に最初と最後に来る場合は、 trim を簡単に使用できます。

$coords = trim($coords, '()');

結果:

51.50972493425563, -0.1323877295303646
38
Sarfraz
echo str_replace(
     array('(',')'), array('',''), 
     $coords);

または、単にstr_replaceを2回実行します。

echo str_replace(')', '', str_replace('(','',$coords));
1
symcbean

str_replaceは最初のパラメーターとして配列を持つことができます。

 <?php echo str_replace(array('(',')'),'',$coords); ?>
0
rauschen

私はあなたがここにあなたのコードを文字列として書く必要があると思います、そうでなければあなたは構文エラーを受け取ります;)。とにかく、これは私が考えるソリューションです。

$coords = "(51.50972493425563, -0.1323877295303646)";

$aReplace = array('(', ')');
$coordsReplaced = str_replace($aReplace , '', $coords);

挨拶、ステファン

0
Stefan Koenen