我的字符串看起来像这样:
'Toy Story..(II) (1995)'
我想将这条线分成两部分:
['Toy Story..(II)','1995']
我该怎么办?感谢。
答案 0 :(得分:4)
此代码将帮助您入门:
'Toy Stroy..(II) (1995)'.rstrip(')').rsplit('(',1)
除此之外,您可以使用r'\s*[(]\d{4}[)]\s*$'
匹配字符串末尾括号中的四位数字。如果你找到它,你可以把它砍掉:
s = ''
l = [s]
match = re.compile(r'\s*[(]\d+[)]\s*$').search(s)
if match is not None:
l = [s[:len(match.group(0))], s[-len(match.group(0)):].trim]
答案 1 :(得分:1)
一种方法是:
s = 'Toy Stroy..(II) (1995)'
print s[:s.rfind('(')].strip()
print s[s.rfind('('):].strip("()")
输出:
Toy Stroy..(II)
1995
>>>
答案 2 :(得分:0)
您可以使用正则表达式。见这里:http://www.amk.ca/python/howto/regex/
或者您可以使用拆分功能,然后手动删除括号或其他不需要的字符。见这里:http://www.python.org/doc/2.3/lib/module-string.html
答案 3 :(得分:0)
l[:-1].split("(")