2024-09-27 21:33:25 发布
网友
我制作了一个剧本,取材于该系列的标题,但每个标题都有一年和“onlajn sa prevodom”。年份因系列而异。如何使用python删除年份和“onlajn sa prevodom”
naslov = "Tajkun (2020) onlajn sa prevodom"
import re naslov = "Tajkun (2020) onlajn sa prevodom" re.sub("\([0-9]{4}\) onlajn sa prevodom", "", naslov)
更多关于re module的信息
使用常规表达式。这就是它们的设计目的
import re title = "Tajkun (2020) onlajn sa prevodom" corrected_title = re.sub(r"\s*\(\d+\) onlajn sa prevodom", "", title)
你最好的选择是正则表达式匹配。如果您非常确定字符串将包含这个“(year)onlajn sa prevodom”模式,那么您可以将其作为
pattern = r"\s\([0-9]+\) onlajn sa prevodom" 逐步:
pattern = r"\s\([0-9]+\) onlajn sa prevodom"
\s表示空白
\s
\([0-9]+\)表示在两个括号之间匹配一个或多个数字
\([0-9]+\)
尾随的“onlajn sa prevodom”仅用于匹配,以确保(xxxx)之间的数字后跟短语。下面是一个与您的示例相匹配的简短程序
import re if __name__ == '__main__': expr = r"\s\([0-9]+\) onlajn sa prevodom" naslov1 = "Tajkun (2020) onlajn sa prevodom" naslov2 = "Tajkun (2019) onlajn sa prevodom" naslov3 = "Tajkun (102) onlajn sa prevodom" naslov4 = "Tajkun (1990) onlajn sa prevodom" print(re.split(expr, naslov1)) print(re.split(expr, naslov2)) print(re.split(expr, naslov3)) print(re.split(expr, naslov4))
输出:
['Tajkun', ''] ['Tajkun', ''] ['Tajkun', ''] ['Tajkun', '']
要获得标题,只需分配re.split()的输出
my_title = re.split(expr, naslov1)[0] print(my_title)
我强烈建议学习正则表达式。这是一个很好的例子
更多关于re module的信息
使用常规表达式。这就是它们的设计目的
你最好的选择是正则表达式匹配。如果您非常确定字符串将包含这个“(year)onlajn sa prevodom”模式,那么您可以将其作为
pattern = r"\s\([0-9]+\) onlajn sa prevodom"
逐步:\s
表示空白\([0-9]+\)
表示在两个括号之间匹配一个或多个数字尾随的“onlajn sa prevodom”仅用于匹配,以确保(xxxx)之间的数字后跟短语。下面是一个与您的示例相匹配的简短程序
输出:
要获得标题,只需分配re.split()的输出
我强烈建议学习正则表达式。这是一个很好的例子
相关问题 更多 >
编程相关推荐