You can do something like this:
>>> a = "some-sample-filename-to-split"
>>> "-".join(a.split("-", 2)[:2])
'some-sample'
a.split("-", 2)
will split the string upto the second occurrence of -
.
a.split("-", 2)[:2]
will give the first 2 elements in the list. Then simply join the first 2 elements.
OR
You could use regular expression : ^([w]+-[w]+)
>>> import re
>>> reg = r'^([w]+-[w]+)'
>>> re.match(reg, a).group()
'some-sample'
EDIT: As discussed in the comments, here is what you need:
def hyphen_split(a):
if a.count("-") == 1:
return a.split("-")[0]
return "-".join(a.split("-", 2)[:2])
>>> hyphen_split("some-sample-filename-to-split")
'some-sample'
>>> hyphen_split("some-sample")
'some'
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…