Comment vérifier une nouvelle ligne dans une chaîne?
Est-ce que python3.x a quelque chose de similaire au fonctionnement normal de Java où if (x=='*\n')
aurait fonctionné?
Si vous voulez juste vérifier si une nouvelle ligne (\n
) est présente, vous pouvez simplement utiliser l'opérateur in
de Python pour vérifier si c'est dans une chaîne:
>>> "\n" in "hello\ngoodbye"
True
... ou dans le cadre d'une déclaration if
:
if "\n" in foo:
print "There's a newline in variable foo"
Vous n'avez pas besoin d'utiliser des expressions régulières dans ce cas.
Oui comme ça:
if '\n' in mystring:
...
(Python a des expressions régulières, mais elles sont excessives dans ce cas.)
Voir:
https://docs.python.org/2/glossary.html#term-universal-newlines
Manière d'interpréter les flux de texte dans lesquels tous les éléments suivants sont reconnus comme terminant une ligne: la convention de fin de ligne Unix '\ n', la convention Windows '\ r\n' et l'ancienne convention Macintosh '\ r '. Voir PEP 278 et PEP 3116, ainsi que str.splitlines () pour une utilisation supplémentaire.
Je déteste être le seul à couper les cheveux en quatre (cela veut dire), mais cela suggère qu'un test suffisant serait:
if '\n' in mystring or '\r' in mystring:
...