删除以某些给定字符开头的子字符串

remove the substring starting with some given characters

有些字符串具有以下模式 '{substring1}.{substring2}'。我只想保留 substring1。例如,对于 e23.hd,我只想保留 e23.

这里是测试代码

a = 'e23.hd'
import re
re.sub(".*","",a)
a

e23.hd

我试过用.*来表示.{substring2},好像不行。

你使用正则表达式有什么原因吗?这可以在没有正则表达式的情况下解决。 但如果你真的想要,这里是正则表达式的方式:

a = 'e23.hd'
import re
re.sub("\..*","",a)
print(a)
#'e23'

或没有正则表达式:

print(a.split(".")[0])
#'e23'

或没有正则表达式且如果有多个“.”有可能:

print(a.rsplit(".", 1)[0])
#'e23'