如何在python中的某个字符后拆分字符串

时间:2018-02-24 05:51:25

标签: python substring

如果我有一个字符串,我只想说,b a hello b Hi,我怎么能把所有b s AFTER 字符串拆分为第一次出现的字母{{1} }}?

如同,它会返回a

7 个答案:

答案 0 :(得分:4)

此处记录了这些内容:str.rsplit()

sentence = 'b a hello b Hi'
sentence.rsplit('b', 1)

答案 1 :(得分:2)

如果您注意到门的位置(首先是'a'),那么您可以在该点之后拆分字符串,如:

代码:

a_string = 'b a hello b Hi'

first_a = a_string.index('a')
a_split = a_string[first_a:].split('b')
a_split[0] = a_string[:first_a] + a_split[0]
a_split = [x.strip() for x in a_split]

print(a_split)

结果:

['b a hello', 'Hi']

答案 2 :(得分:0)

str = 'b a hello b Hi'
print(str[str.index('a'):].split('b'))

答案 3 :(得分:0)

str = "b a hello b Hi"
res = str[str.find("a"):].split("b")
res[0] = str[:str.find("a")] + res[0]
print res  
# ['b a hello ', ' Hi']

答案 4 :(得分:0)

试试这个: -

a = "b a hello b Hi"
x = [x for x,y in enumerate(a) if y=='b']
ls = [a[x[0]:x[-1]],a[x[-1]+1:].strip()]
print(ls)

答案 5 :(得分:0)

使用以下代码

s = 'b a hello b Hi'
i = s.index("a")
s2 = s[i+1:].strip()
l = s2.split(" b ")
print(l)

答案 6 :(得分:0)

在您的示例结果中,您将字符串拆分为' b'所以我打算用它。

a = "b a hello b Hi"
index = a.index('a') + a[a.index('a'):].index(' b ') # That's the index of first ' b '.

# Since split will give 1 empty element at the beginning I exclude that.
result = [a[:index]] + a[index:].split(' b ')[1:] 
# ['b a hello', 'Hi']

如果你想分开' b'然后更换它们。