Python regex – Ersetzen Sie einfache Anführungszeichen und Klammern

Ich würde gerne Mengen mit Namen dann eine eckige Klammer und ein einziges Zitat mit dem Inhalt im Inneren ersetzen. Also, von diesem:

RSQ(name['BAKD DK'], name['A DKJ'])

Dazu:

RSQ(BAKD DK, A DKJ)

  • Python: wie zu bestimmen, ob eine Liste von Wörtern in einem String existiert
  • Kommentieren Reguläre Ausdrücke in Python
  • Zählen Sie überlappende Regex-Spiele noch einmal
  • Wie erstelle ich neue Spalten, um die Daten der Duplicate ID Spalte zu speichern?
  • Erfassen von Wiederholungsunterschriften in Python-Regex
  • Wie man \ p {L} in python regex implementiert
  • Python re sub vs findall
  • Reguläre Ausdrücke Bedeutung eines Schrägstrichs /
  • 2 Solutions collect form web for “Python regex – Ersetzen Sie einfache Anführungszeichen und Klammern”

    Code –

     import re s = "RSQ(name['BAKD DK'], name['A DKJ'])" expr = r"[\'\[\]]|\bname\b" print(re.sub(expr, '', s)) 

    Ausgabe –

     RSQ(BAKD DK, A DKJ) 

    Sie können auch die Spartruppen verwenden, um Strings aus dem name['something'] zu extrahieren name['something'] :

     >>> import re >>> s = "RSQ(name['BAKD DK'], name['A DKJ'])" >>> re.sub(r"name\['(.*?)'\]", r"\1", s) 'RSQ(BAKD DK, A DKJ)' 

    Wo (.*?) Ist eine Erfassungsgruppe , die irgendwelche Zeichen beliebig oft in einer nicht gierigen Weise übereinstimmen würde. \1 verweist auf die erfasste Gruppe in einem Ersatzstring.

    Python ist die beste Programmiersprache der Welt.