regex - 用 re.findall 加倍斜线 - Python
问题描述
我想知道为什么 re.findall 通过在每个斜杠前面添加一个转义斜杠来返回一个字符串。我们可以强制它返回一个没有这个双斜杠的原始字符串吗?
例子
src='on <p>essia \( de faire \)</p>'
src = re.findall(r'<p>(.*?)</p>',src)
print(src)
它返回:
['essia \\( de faire \\)']
但我想返回:
['essia \( de faire \)']
解决方案
这是因为它打印了整个列表。打印其元素以获得所需的输出。
In [1]: import re
In [2]: src='on <p>essia \( de faire \)</p>'
...:
In [3]: src = re.findall(r'<p>(.*?)</p>',src)
In [4]: print(src)
['essia \\( de faire \\)']
In [5]: print(src[0])
essia \( de faire \)
推荐阅读
- ios - 框架位置缺少 dylib
- java - 如何将 POJO 传递给绑定到 REST 路由的 mybatis
- scala - Apache spark - 从弹性搜索加载数据太慢
- javascript - 开玩笑地模拟嵌套函数
- python - 熊猫:将秒数转换为时间增量或时间
- ios - 你如何调试 Swift PlaygroundBook?
- build - 如何构建调试动态库?
- post - 将压缩的文本文件发布到 apache nifi
- java - Spring-auto-restdocs 有响应字段链接到对象而不是展平它们
- android - StaggeredGridLayoutManager 中的设置范围