【发布时间】:2013-08-05 09:53:02
【问题描述】:
我不敢相信将 变量 视为 原始字符串 有这么难!我已经搜索并找到了类似的问题,但没有正确的答案。
我有一个变量,其中存储了域名。例如'域\用户',我只需要使用re 获取用户名。问题是 Python 为我提供了特殊字符组合的十六进制值,例如当我在字符串中有 \b 时。
我只需要从变量中获取文字字符串即可。
author = list[0] // list[0] contains 'domain\blah'
author = re.sub('.*\\\\(.+)$', r'\1', author)
我希望blah,得到'domain\x08lah'!
在开始时将字符串保存为原始字符串不是一种选择,因为我是从其他正则表达式操作中获取字符串的。
有什么想法吗?
编辑:
我错误地假设变量中有一个斜杠。事实上,当从另一个操作中获取变量时,反冲已经被转义了。因此,在尝试创建测试场景时,我将其作为自己的一个问题。
【问题讨论】:
-
list[0]最初是如何设置的?您在某处定义了一个常规字符串,并没有在那里转义反斜杠。