python-3.x - 如何允许正则表达式搜索 '\xcf\x83' 这种字符串
问题描述
pattern = compile(r"(?<=\>)\d{1,4}\.(?=\s)")
input_string = "some string with \xcf\x83 code"
print(pattern.search(input_string))
但是模式搜索忽略了 utf-8 编码值,例如\xcf
如何允许
解决方案
对输入字符串和模式使用 r-string 格式,r""
这样特殊字符不会被翻译但保持不变。在模式中,在 \ 字符前面使用额外的 \ 来表示正则表达式必须搜索后面的 \ 并且不是特殊字符的开头
import re
print(re.compile(r"\\xcf\\x83").search(r"some string with \xcf\x83 code"))
# <_sre.SRE_Match object; span=(17, 25), match='\\xcf\\x83'>
推荐阅读
- java - 一种从 JVM 内存中获取所有对象实例的方法
- node.js - Discord.js - 反应收集器的问题
- c# - 从 C# 程序查询 API 时的 HTTP 状态代码 500,但 API 有效
- github - 在 Github 拉取请求页面上显示 Travis-CI 构建状态
- php - Bootstrap 导航切换器未关闭 wordpress 中的菜单
- python - 在链中的 pandas 中添加组属性(类似于 dplyr group_by - R 中的变异)
- reactjs - 为 ReactJS 和 Asp.net 核心创建 Docker 镜像
- javascript - 在javascript中定义函数时,有没有办法将数组作为参数传递?
- sql - 如果其他列等于 SQL Oracle 中的特定值,则创建新列
- python - 一维卷积神经网络权重矩阵