我在python中有以下字符串:
foo = 'a_b_c'
如何将字符串拆分为两部分:'a_b'
和'c'
?即,我想在第二个'_'
str.split('_')
分为3个部分:'a'
,'b'
和'c'
。
答案 0 :(得分:4)
使用str.rsplit()
method限制:
part1, part2 = foo.rsplit('_', 1)
str.rsplit()
从右侧分裂,极限(第二个参数)告诉它只分裂一次。
或者,使用str.rpartition()
:
part1, delimiter, part2 = foo.rpartition('_')
这包括分隔符作为返回值。
演示:
>>> foo = 'a_b_c'
>>> foo.rsplit('_', 1)
['a_b', 'c']
>>> foo.rpartition('_')
('a_b', '_', 'c')
答案 1 :(得分:2)
import re
x = "a_b_c"
print re.split(r"_(?!.*_)",x)
您可以通过re
进行此操作。re
中lookahead
使用_
,我们将_
分开,之后不应该\\ "Hello: World." -> "Hello : World ."
\\ "It's 9:00?" -> "It ' s 9 : 00 ?"
\\ "1.B,3.D!" -> "1 . B , 3 . D !"
[a-ZA-Z\\d]+
}。