删除字符串中从开头到']'字符的字符

delete characters in a string from begining to ']' character

删除不超过“]”的字符

a="[12] hi how are you [1]" 
b="[13][14] hello" 

预期输出:

a="hi how are you [1]"

b=" hello"  

你可以使用正则表达式来实现这个

import re

txt = "[12] hi how are you" 
x = re.sub("\[[0-9]+\]\s*", "", txt)
print(x)

你可以利用rindex():

def doIt(a):
    if "]" in a:
        x = a.rindex("]")
        a = a[x + 1 :].strip()
    return a

让我们测试一下:

a = "[12] hi how are you"
b = "[13][14] hello"
c = "kahbscdkashju asjhd bkaisd b dab bui"
print(doIt(a))
print(doIt(b))
print(doIt(c))

输出:

hi how are you
hello
kahbscdkashju asjhd bkaisd b dab bui

您也可以在不使用任何内置字符串方法的情况下编写自定义方法。

def doIt(a):
    ans = []
    for i in range(len(a) - 1, -1, -1):
        if a[i] == "]":
            break
        ans.insert(0, a[i])
    return "".join(ans).strip()