在 python 中使用 Regex 将 $$ 或更多替换为单个空格
Posted
技术标签:
【中文标题】在 python 中使用 Regex 将 $$ 或更多替换为单个空格【英文标题】:Replace $$ or more with single spaceusing Regex in python 【发布时间】:2021-12-16 00:10:30 【问题描述】:在下面的字符串列表中,我想删除 $$ 或更多,只有一个空格。
例如- 如果我有 $$ 则一个空格字符,或者如果有 $$$$ 或更多,那么也只有 1 个空格将被替换。
我正在使用以下正则表达式,但我不确定它是否能达到目的
regex_pattern = r"['$$']2,?"
以下是测试字符串列表:
['1', '巴特那市 $$$$ $$$$$$$$查看详情', '序列号:$$$$5$$$$ $$$$契约号:$$$$5 $$$$ $$$$代币编号:$$$$7$$$$ $$$$Reg Year:2020', 'Anil Kumar Singh Alias Anil Kumar$$$$$$$$执行官$$$$$ $$$晚。 Harinandan Singh$$$$$$$$$$$$Md.沙赫扎德·艾哈迈德$$$$$$$$$索赔人$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ Md. Serajuddin'、'Anil Kumar Singh Alias Anil Kumar'、'Executant'、'Late. Harinandan Singh”,“医学博士”。沙赫扎德·艾哈迈德”、“索赔人”、“迟到。 Md. Serajuddin', 'Circle:Patna City Mauja: $$$$ $$$$Khata : na$$$$ $$$$ 地块:2497 面积(十进制):1.5002 土地类型:Res. Branch Road 土地价值 :1520000 MVR 价值 :1000000', 'Circle:Patna City Mauja: $$$$ $$$$Khata : na$$$$ $$$$地块 :2497 面积(十进制):1.5002 土地类型: 水库。支路土地价值:1520000 MVR 价值:1000000']
【问题讨论】:
您的“测试字符串”看起来更像是一个字符串列表,而您的regex_pattern
不是有效的 Python,请提供您实际尝试的示例,允许其他人自己尝试并提供给你一个答案。
@Grissari 编辑了帖子。我在 regex101.com 上试过了
这不能解决问题,我们不想匹配空格,我们想将出现的 $ 替换为单个空格字符@Thefourthbird
【参考方案1】:
关于
我正在使用以下正则表达式,但我不确定它是否适用于 目的
模式['$$']2,?
可以写成['$]2,?
,并以非贪婪的方式匹配'
或$
的2 个或更多字符。
您的模式目前得到了正确的匹配,因为没有像 ''
或 $'
这样的部分存在
由于模式是非贪婪的,它只会匹配2个字符,不会匹配$$$
中的所有3个字符
您可以编写匹配 2 个或更多美元符号的模式而不使其不贪心,因此$
的奇数也将被匹配:
regex_pattern = r"\$2,"
在替换中使用空格。
【讨论】:
【参考方案2】:这是你需要的吗?:
import re
for d in data:
d = re.sub(r'\$2,', ' ', d)
【讨论】:
以上是关于在 python 中使用 Regex 将 $$ 或更多替换为单个空格的主要内容,如果未能解决你的问题,请参考以下文章
尝试使用 Python、BeautifulSoup 和/或 Regex 获取日期
如何将 JSON 中的值替换为 RegEx 在使用 Python 的文件中找到的值?