想知道在Python中是否存在整潔的API來從後向(從字符串中的特定位置)搜索字符串,例如,在字符串「Hello StackOverflow Hello Python」中,假設我想要找到子字符串「Python」之前的子字符串「Hello」的索引?使用Python從後向搜索子字符串
在此先感謝, 林
想知道在Python中是否存在整潔的API來從後向(從字符串中的特定位置)搜索字符串,例如,在字符串「Hello StackOverflow Hello Python」中,假設我想要找到子字符串「Python」之前的子字符串「Hello」的索引?使用Python從後向搜索子字符串
在此先感謝, 林
是的,這就是所謂的str.rindex()
。它需要參數sub
- 要查找的子字符串,start
- 起始位置,以及end
。
它是index
函數的r
的逆函數。還有一些其他的,如rsplit
。
謝謝奧斯汀,總是很好向你學習。只是爲了澄清,你的意思是使用rindex或使用rfind? :) –
這取決於你。你想要一個'ValueError'嗎?但是對於你的信息,'index'和'rindex'函數出現在很多語言中,所以它們是一對好記的。 –
嗨奧斯汀,我只需要得到-1當沒有命中,ValueError是否返回並不重要,您的建議是高度讚賞。 :) –
Downvoted。 「python string」搜索的第一個結果是https://docs.python.org/2/library/string.html#string.rfind – viraptor
@viraptor,很好的結果。我對rindex和rfind感到困惑,哪一個適合我的問題?謝謝。 –
任何一個。問題是 - 你想拋出一個異常(rindex)或-1返回(rfind)如果字符串丟失。 – viraptor