【问题标题】:Python take the string of anything, ignoring all escape characters [closed]Python接受任何字符串,忽略所有转义字符[关闭]
【发布时间】:2019-03-07 00:57:50
【问题描述】:

我正在尝试创建一个函数,该函数通常采用通常包含\n 字符的复制粘贴文本。一个例子如下:

func('''This
is

some
text
that I entered''')

此函数的问题是文本有时会相当大,因此逐行逐行避免'"''' 是不合理的。一段可能引起问题的文字如下:

func('''This
is'''

some"
text'
that I entered''')

我想知道是否有任何方法可以将第二个示例中的文本用作字符串,而不管它是由什么组成的。

谢谢!

【问题讨论】:

  • 您是否要提取完整的字符串,减去换行符?输出将是This is some text that I entered?
  • 不,我要提取完整的字符串和换行符,所以输出是This\nis'''\n\nsome"\ntext'\nthat I entered
  • 我不明白你想在这里做什么。你能举例说明这个字符串是如何导致问题的吗?

标签: python string string-literals


【解决方案1】:

据我所知,您无法将文本直接粘贴到您的文件中。但是,您可以将其粘贴到文本文件中。

使用正则表达式查找三引号''' 和其他无效字符。

python示例:

def read_paste(file):
    import re

    with open(file,'r') as f:
        data = f.readlines()

    for i,line in enumerate(data):
        data[i] = re.sub('("|\')',r'\\\1',line)

    output = str()
    for line in data:
        output += line

    return output

【讨论】:

  • 如果你说的是真的,那么这个问题根本就没有答案。虽然这是将我提供的示例字符串保存到字符串对象中的有效方法,但它不适用于文件内部,因此我无法将其标记为已回答
猜你喜欢
  • 1970-01-01
  • 2019-12-18
  • 1970-01-01
  • 2011-06-08
  • 2011-07-11
  • 2013-04-18
  • 2016-10-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多