使用正则表达式库时,在python中为符号添加反斜杠

时间:2014-09-11 22:05:14

标签: python regex string list

所以我需要有选择地在python的re库中为已经具有预定义(例如+和*)的字符添加反斜杠。

说我给了一个数组

arr = ["five", "+", "two", "*", "zero", "=", "five"]

re(或python)中是否有任何函数可以让我添加一个\到" +"和" *",所以它看起来像

arr = ["five", "\+", "two", "\*", "zero", "=", "five"] ?

我可以在技术上进行详尽的搜索,并将arr中的每个元素与其中一个符号进行比较并相应地添加\,但这远非理想。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:7)

re.escape使用map或列表理解:

>>> import re
>>> arr = ["five", "+", "two", "*", "zero", "=", "five"]
>>> map(re.escape, arr)
['five', '\\+', 'two', '\\*', 'zero', '\\=', 'five']
>>> [re.escape(x) for x in arr]
['five', '\\+', 'two', '\\*', 'zero', '\\=', 'five']