So finden Sie alles, was nach Symols #TR=
geht und es ist innerhalb [ ]
mit Re-Modul. Zum Beispiel #TR=[ dfgg dfgddfg dgfgf dgdgdg dfgfg ]
Python. Regulärer Ausdruck
Antwort
import re
txt = '#TR=[ dfgg ] a kuku #TR=[ala ma kota]'
Wenn Sie nur das erste Vorkommen dieses Musters suchen möchten, Verwendung:
matches = re.search('#TR=\[([^\]]*)\]', txt)
if matches:
print(repr(matches.group(1)))
' dfgg dfg '
Wenn Sie alle Vorkommen im Text, Verwendung finden wollen:
matches = re.findall('#TR=\[([^\]]*)\]', txt)
if matches:
print(matches)
[' dfgg ', 'ala ma kota']
Denken Sie daran zu prüfen, ob die gesuchten Zeichen in regulären Ausdrücken special meaning haben (wie [
oder ]
). Wenn sie speziell sind, entziehe sie mit dem Backslash: \[
.
Denken Sie auch daran, dass reguläre Ausdrücke standardmäßig "gierig" sind, was bedeutet, dass sie versuchen, so viel Text wie möglich zu erhalten. also, wenn Sie verwenden .*
(was bedeutet „außer Newline jedes Zeichen“; details) statt [^\]]*
(was bedeutet „Spiel bis zum ]
gefunden wird, und stoppen, bevor es“), zu viel Text angepasst werden könnte:
matches = re.findall('#TR=\[(.*)\]', txt)
if matches:
print(matches)
[' dfgg ] a kuku #TR=[ala ma kota']
Sie können auch die "genügsam" Modifikator ?
in Ihrem Muster, nach der Qualifikation (*
, +
) verwendet werden, die die "die weniger-Zeichen-the-besser" passende ermöglicht (*?
, +?
verwenden). Das Ergebnis könnte besser lesbar:
'#TR=\[(.*?)\]'
statt:
'#TR=\[([^\]]*)\]'
Es gibt ein großes Online-Tool, um Ihre Muster as-you-type zu testen: RegExr by Grant Skinner.
(? < = # TR = [) [^]] * (? =])
import re
# compile the regex
exp = re.compile('.*\[(.*)\].*')
txt = r"#TR=[ dfgg dfgddfg dgfgf dgdgdg dfgfg ]"
match = exp.match(txt)
# grab the text between the square brackets
result = match.group(1)
Entschuldigung, ich habe deine Antwort versehentlich bearbeitet, um meine eigene zu bearbeiten. Habe meine Änderung rückgängig gemacht. –
- 1. Python regulärer Ausdruck sub
- 2. Python string.replace regulärer Ausdruck
- 3. Python Regulärer Ausdruck
- 4. Python regulärer Ausdruck?
- 5. Python Regulärer Ausdruck Gruppen
- 6. Python regulärer Ausdruck ganzes Wort
- 7. Python regulärer Ausdruck mit [: numeric:]
- 8. Regulärer Ausdruck Substitution in Python
- 9. Regulärer Ausdruck Python Django url
- 10. Python regulärer Ausdruck entspricht alles
- 11. Python regulärer Ausdruck nicht übereinstimmend
- 12. Regulärer Ausdruck Python Datenrahmen Element
- 13. Regulärer Ausdruck
- 14. Regulärer Ausdruck
- 15. Regulärer Ausdruck Implementierungsdetails
- 16. Python web-crawling und regulärer Ausdruck
- 17. Python regulärer Ausdruck mit oder und re.search
- 18. Python regulärer Ausdruck: Wie Superstrings auszuschließen?
- 19. Regulärer Ausdruck Beispiel in Python 3
- 20. Python regulärer Ausdruck für mehrere Tags
- 21. Python regulärer Ausdruck für HTML-Analyse (BeautifulSoup)
- 22. Python regulärer Ausdruck, um Absätze zu trennen
- 23. Grubers URL Regulärer Ausdruck in Python
- 24. regulärer Ausdruck in Python über oder
- 25. Regulärer Ausdruck in Python mit urlparse
- 26. Python Regulärer Ausdruck mit dem spezifischen Währungsformat
- 27. Regulärer Ausdruck weitere Überprüfung
- 28. Regulärer Ausdruck - Wiederholungsgruppen
- 29. Regulärer Ausdruck Problem
- 30. Regulärer Ausdruck Problem
Erwarten Sie verschachtelte '[]' in Ihrer obersten Ebene von '[]'? – martineno