字符串搜索错误“正则表达式的意外结束”

时间:2018-01-29 05:50:41

标签: python-2.7

我想在字符串a

中搜索字符串b = "sed s/xxx/[/"

代码:

a = "data sed s/xxx/[/"
b = r'\ssed s/xxx/[/\b'
re.findall(b,a)

输出错误

unexpected end of regular expression.

2 个答案:

答案 0 :(得分:2)

字符[是正则表达式元字符。为了按字面意思匹配它,你需要逃避它。

r'\ssed s/xxx/\[/'   # backslash-escape it, or
r'\ssed s/xxx/[[]/'  # put it in a character class

第二个例子还显示了元字符实际用于的内容。在正则表达式中,[abc]匹配枚举中的单个字符(因此abc);这被称为角色类。

答案 1 :(得分:1)

尝试

import re

a = "data sed s/xxx/[/"
b = r'\ssed s/xxx/\[/'

print re.findall(b,a)