Tag: regex

BeautifulSoup gibt leere Liste zurück, wenn sie nach zusammengesetzten Klassennamen sucht

BeautifulSoup gibt leere Liste zurück, wenn sie nach Compound-Klassennamen mit Regex sucht. Beispiel: import re from bs4 import BeautifulSoup bs = """ <a class="name-single name692" href="www.example.com"">Example Text</a> """ bsObj = BeautifulSoup(bs) # this returns the class found_elements = bsObj.find_all("a", class_= re.compile("^(name-single.*)$")) # this returns an empty list found_elements = bsObj.find_all("a", class_= re.compile("^(name-single name\d*)$")) Ich brauche […]

Finden Sie kürzeste Spiele zwischen zwei Strings

Ich habe eine große Log-Datei, und ich möchte eine mehrzeilige Zeichenfolge zwischen zwei Strings extrahieren: start und end . Das folgende ist Beispiel aus der inputfile : start spam start rubbish start wait for it… profit! here end start garbage start second match win. end Die gewünschte Lösung sollte drucken: start wait for it… profit! […]

Warum nicht ignorieren flag (re.I) Arbeit in re.sub ()

Von pydoc: Re.sub = sub (Muster, repl, string, count = 0, flags = 0) Geben Sie die Zeichenfolge zurück, die durch das Ersetzen der am weitesten links liegenden nicht überlappenden Vorkommen des Musters in der Zeichenkette durch den Ersatz repl erhalten wird. Repl kann entweder eine Zeichenfolge oder ein abrufbarer sein; Wenn ein String, Backslash […]

Python-Snippet, um C- und C ++ – Kommentare zu entfernen

Ich suche Python-Code, der C- und C ++ – Kommentare aus einer Zeichenfolge entfernt. (Angenommen, der String enthält eine ganze C-Quelldatei.) Ich merke, dass ich mit einem Regex (;) Teilstrings mit einem Regex versammeln könnte, aber das löst nicht nesting /* , oder mit einem // innerhalb eines /* */ . Idealerweise würde ich eine […]

Python string.replace regulärer Ausdruck [doppelte]

Diese Frage hat hier schon eine Antwort: Wie gebe ich einen Regex in string.replace ein? 6 antworten Ich habe eine Parameterdatei des Formulars parameter-name parameter-value Wo die Parameter in beliebiger Reihenfolge sein können, aber es gibt nur einen Parameter pro Zeile. Ich möchte den Parameterwert eines Parameters durch einen neuen Wert ersetzen. Ich benutze eine […]

Entfernen Sie alle Sonderzeichen, Interpunktion und Leerzeichen aus String

Ich muss alle Sonderzeichen, Interpunktion und Leerzeichen aus einer Zeichenkette entfernen, damit ich nur Buchstaben und Zahlen habe.

Variable-length-Lookbehind-Assertion-Alternativen für reguläre Ausdrücke

Gibt es eine Implementierung von regulären Ausdrücken in Python / PHP / JavaScript, die Variable-Länge-Lookbehind-Assertion unterstützt? /(?<!foo.*)bar/ Wie kann ich einen regulären Ausdruck schreiben, der die gleiche Bedeutung hat, aber keine Lookbehind-Assertion verwendet? Gibt es eine Chance, dass diese Art von Behauptung wird eines Tages durchgeführt werden? Es ist viel besser, dass ich dachte Aktualisieren: […]

Finde längste repetitive Sequenz in einer Zeichenfolge

Ich muss die längste Sequenz in einer Zeichenkette mit der Einschränkung finden, dass die Sequenz drei oder mehrmals wiederholt werden muss. Also, wenn mein String ist: Fdwaw4helloworldvcdv1c3xcv3xcz1sda21f2sd1ahelloworldgafgfa4564534321fadghelloworld Dann möchte ich den Wert " helloworld " zurückgeben Ich weiß von ein paar Möglichkeiten, dies zu erreichen, aber das Problem, das ich bin, ist, dass die eigentliche […]

Regex-Fehler – nichts zu wiederholen

Ich bekomme eine Fehlermeldung, wenn ich diesen Ausdruck verwende: re.sub(r"([^\s\w])(\s*\1)+","\\1","…") Ich habe die Regex bei RegExr überprüft und es kehrt zurück . wie erwartet. Aber wenn ich es in Python versuche, bekomme ich diese Fehlermeldung: raise error, v # invalid expression sre_constants.error: nothing to repeat Kann jemand bitte erklären?

Python nicht gierige regexes

Wie mache ich eine Python-Regex wie "(. *)", So dass, da "a (b) c (d) e" python-Spiele "b" anstelle von "b) c (d"? Ich weiß, dass ich "[^)] anstelle von". "Verwenden kann, aber ich suche eine allgemeinere Lösung, die meine Regex ein wenig sauberer hält. Gibt es irgendeine Möglichkeit, Python zu sagen "hey, passen Sie […]

Python ist die beste Programmiersprache der Welt.