NumPy | rfind method
Start your free 7-days trial now!
Numpy's rfind(~) method returns the starting index of the last occurrence of the specified substring in each input string. If not found, -1 is returned.
Difference between rfind(~) and find(~)
The difference between methods rfind(~) and find(~) is that rfind(~) returns the index of the last occurrence of the substring, while find(~) returns the index of the first occurrence. See the example below for clarification.
Parameters
1. a | array_like
The source array.
2. sub | string
The substring to search for in the source array.
3. startlink | int | optional
The index to start searching from. By default, start=0.
4. endlink | int | optional
The index to search until. By default, end is equal to the size of the input array.
Return value
A Numpy array of integer indices.
Examples
Basic usage
np.char.rfind(["aabcd", "def"], "bc")
array([ 2, -1])
Notice how -1 is returned for "def" since it does not include the substring "bc".
Comparison with find method
Specifying a starting index
np.char.rfind(["abcd"], "ab", start=1)
array([-1])
Since we are starting from the 1st index, the search is performed on the string "bcd", which does not contain the substring "ab".
Specifying an ending index
np.char.rfind(["abcd"], "cd", end=3)
array([-1])
Since we stop our search at the 3rd index (inclusive), the search is performed on the string "abc", which does not contain the substring "cd".