0
是否有函數返回結束索引而不是子字符串的開始索引。例如,對於Python:從字符串的結尾開始返回索引的函數
string = 'the rain in spain stays mainly in the plain'
string.foo('mainly ')
返回31,而不必使用string.index('mainly ')+len('mainly ')
?
是否有函數返回結束索引而不是子字符串的開始索引。例如,對於Python:從字符串的結尾開始返回索引的函數
string = 'the rain in spain stays mainly in the plain'
string.foo('mainly ')
返回31,而不必使用string.index('mainly ')+len('mainly ')
?
它可以在兩線可以輕鬆實現:
def get_sub_end(s, sub):
f = s.find(sub)
return f if f == -1 else f + len(sub)
用法:
test_str = 'the rain in spain stays mainly in the plain'
if __name__ == '__main__':
print get_sub_end(test_str, "mainly ") # >>> 31
print get_sub_end(test_str, "undefined ") # >>> -1
可能是一個正則表達式,經過尋找空間「主要是」 –
你_may_使用正則表達式或分裂完成它等。但使用'+ len()'會更簡單。你爲什麼不想用它? – Lafexlos
我只是想知道是否有更清晰的方法來做到這一點,但似乎'+ len()'是最好的方法。 – will