You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何为单引号包裹且含点号的token添加str(row[...])包装

Python正则替换实现方案

核心逻辑使用Python内置的re模块的替换方法,匹配同时满足「被单引号包裹、内部包含.字符」的内容,再按要求拼接包装即可。


完整可运行代码

import re

# 原始字符串
origin_str = "test = \"if 'col.A' not null and if 'col.B' not 'null'"

# 正则匹配规则:匹配被单引号包裹且内部含.的内容
pattern = r"'([^']*\.[^']*)'"
# 替换规则:\1指代匹配到的单引号内部的内容
result = re.sub(pattern, r"str(row['\1'])", origin_str)

print(result)

正则规则说明

  • 开头和结尾的' 匹配单引号的边界,确保内容被单引号包裹
  • 括号()为捕获组,用来提取单引号中间的有效内容
  • [^']* 匹配0个或多个非单引号的字符,避免匹配到超出当前单引号的内容
  • \. 专门匹配.字符(正则中.本身是通配符,需要加反斜杠转义才能匹配字面量的点)

运行结果验证

输出内容和你期望的结果完全一致:

test = "if str(row['col.A']) not null and if str(row['col.B']) not 'null'

内容的提问来源于stack exchange,提问作者Fazli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 03:15:05