gpt4 book ai didi

python - 从字符串末尾删除标点符号

转载 作者:行者123 更新时间:2023-11-28 22:18:45 24 4
gpt4 key购买 nike

我有一个看似简单的问题,我似乎无法解决。给定一个包含 DOI 的字符串,如果它是标点符号,我需要删除最后一个字符,直到最后一个字符是字母或数字。

例如,如果字符串是:

sampleDoi = "10.1097/JHM-D-18-00044.',"

我想要以下输出:

"10.1097/JHM-D-18-00044"

即。删除 .',

我编写了以下脚本来执行此操作:

invalidChars = set(string.punctuation.replace("_", ""))
a = "10.1097/JHM-D-18-00044.',"
i = -1
for each in reversed(a):
if any(char in invalidChars for char in each):
a = a[:i]
i = i - 1
else:
print (a)
break

但是,这会生成 10.1097/JHM-D-18-00,但我希望它生成 10.1097/JHM-D-18-00044。为什么 44 从末尾删除?

最佳答案

字符串函数 rstrip() 的设计正是:

>>> sampleDoi = "10.1097/JHM-D-18-00044.',"
>>> sampleDoi.rstrip(",.'")
'10.1097/JHM-D-18-00044'

关于python - 从字符串末尾删除标点符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50258257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com