PHP: Preg Klammern ersetzen?

8

Was ist die richtige Syntax für preg_replace nur die Klammer in PHP?

$search = preg_replace('/\(\)/','',$search);

Danke

    
Norse 01.03.2012, 01:56
quelle

4 Antworten

16

Angenommen, Sie möchten sowohl ( als auch ) aus der Zeichenfolge $search löschen:

%Vor%

Ich denke, der schnellste Weg dazu ist die Verwendung der strtr -Funktion, wie folgt:

%Vor%     
J. Bruni 01.03.2012, 01:58
quelle
9

Hier sind meine Ergebnisse eines kleinen Feldtests:

preg_replace("/\(|\)/", "", $str): 1.590735912323

preg_replace('/[\(\)]/', '', $str): 1.3762638568878

strtr($str, array('(' => '', ')' => '')): 0.84079194068909

str_replace("(", "", str_replace(")", "", $str)): 0.80222821235657

Die letzten beiden sind fast identisch, wie J. Bruni gezeigt hat.

    
Tony Bogdanov 01.03.2012 02:09
quelle
1

Sie meinen das so?

%Vor%

Dadurch werden alle Klammern ohne Rücksicht auf die Paarung entfernt.

    
Nilpo 01.03.2012 02:05
quelle
0

Das ist die richtige Syntax, obwohl preg_replace für reguläre Ausdrücke ist, wenn Sie nur () ersetzen wollen, dann ist str_replace ein paar Mal schneller.

Wenn Sie ( oder ) ersetzen möchten, wo immer sie sind, könnten Sie

verwenden %Vor%     
Tony Bogdanov 01.03.2012 01:58
quelle

Tags und Links