Hier ist mein Code:Python Regex Suche nach Zeichenfolge am Anfang der Zeile in der Datei
#!/usr/bin/python
import io
import re
f = open('/etc/ssh/sshd_config','r')
strings = re.search(r'.*IgnoreR.*', f.read())
print(strings)
, die Daten zurückgibt, aber ich brauche spezifische Regex Matching: zB:
^\s*[^#]*IgnoreRhosts\s+yes
Wenn ich den Code ändern einfach:
strings = re.search(r'^IgnoreR.*', f.read())
oder sogar
strings = re.search(r'^.*IgnoreR.*', f.read())
Ich bekomme nichts zurück. Ich muss in der Lage, echte regex ist wie
Und warum verwenden Sie nicht 're.search (r"^\ s * [^ #] * IgnoreRhosts \ s + ja ", f.read())'? –
Python Regex-Syntax ist die gleiche wie Perle – SethMMorton
Wenn^Ign nicht funktioniert, dann gibt es keine Möglichkeit, r '^ \ s * [^ #] * IgnoreRhosts \ s + ja' würde funktionieren. Ich suchte nach dem kleinsten gemeinsamen Nenner. –