繁体   English   中英

如何在 Python 3.x 中检查字符串中的新行?

[英]How can I check for a new line in string in Python 3.x?

如何检查字符串中的新行?

python3.x 是否与 java 的常规操作类似,直接if (x=='*\n')会起作用?

如果你只是想检查一个换行符( \\n )时,你可以使用Python的in运营商来检查,如果它在一个字符串:

>>> "\n" in "hello\ngoodbye"
True

......或作为if语句的一部分:

if "\n" in foo:
    print "There's a newline in variable foo"

在这种情况下,您不需要使用正则表达式。

是的,像这样:

if '\n' in mystring:
    ...

(Python确实有正则表达式,但在这种情况下它们有点过分。)

看到:

https://docs.python.org/2/glossary.html#term-universal-newlines

一种解释文本流的方式,其中所有以下内容都被识别为一行:Unix行尾约定'\\ n',Windows约定'\\ r \\ n'和旧的Macintosh约定'\\ r \\ n ”。 有关其他用途,请参阅PEP 278和PEP 3116以及str.splitlines()。

我讨厌成为分裂头发的人(双关语),但这表明足够的测试将是:

if '\n' in mystring or '\r' in mystring:
    ...

使用 str 方法怎么样?

if len(mystring.splitlines()) > 1:
    print("found line breaks!")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM