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)

  • Wie python regex verwenden, um mit gefangener Gruppe zu ersetzen?
  • Python regelmäßiger Ausdruck passen
  • Was ist Regex für Währungssymbol?
  • Python: Elegante Art und Weise zu überprüfen, ob mindestens ein Regex in der Liste mit einem String übereinstimmt
  • Match bis ein bestimmtes Muster mit Regex
  • Python: Wie bekomme ich Stränge zwischen den Spielen?
  • Wie kann ich nur das Wort selbst in einem WordNet-Synchronisieren mit Python NLTK ausdrucken?
  • Suche nach Permutation von Zeichen eines Teilstrings in Python
  • 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.