Python regex recherche la chaîne au début de la ligne dans le fichier
Voici mon code:
#!/usr/bin/python
import io
import re
f = open('/etc/ssh/sshd_config','r')
strings = re.search(r'.*IgnoreR.*', f.read())
print(strings)
Qui renvoie des données, mais j'ai besoin de regex correspondant: par exemple:
^\s*[^#]*IgnoreRhosts\s+yes
Si j'ai modifier mon code pour simplement:
strings = re.search(r'^IgnoreR.*', f.read())
ou même
strings = re.search(r'^.*IgnoreR.*', f.read())
Je ne suis pas d'obtenir quelque chose en retour. J'ai besoin d'être en mesure d'utiliser de vrais regex est comme en perl
source d'informationauteur Glitch Cowboy
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le mode multi-lignes alors ^ correspond au début d'une ligne:
Noter que sans ce mode, vous pouvez toujours les remplacer
^
par\n
Remarque aussi que ce fichier est calibré comme une tomate ainsi:
est assez bonne pour vérifier le paramètre
EDIT: une meilleure façon
Une fois de plus il n'y a pas de raison d'avoir des espaces. Toutefois, si vous voulez être sûr que vous pouvez toujours utiliser
lstrip()
.