# xarray.DataArray.str.rfind

#### DataArray.str.rfind(sub, start=0, end=None)[[source]](https://github.com/pydata/xarray/blob/v2026.09.0/xarray/core/accessor_str.py#L1761-L1791)

Return highest indexes in each strings in the array
where the substring is fully contained between [start:end].
Return -1 on failure.

If start, end, or ‘sub\` is array-like, they are broadcast
against the array and applied elementwise.

* **Parameters:**
  * **sub** ([`str`](https://docs.python.org/3/builtins/stdtypes.html#str) or [array-like](https://numpy.org/doc/stable/glossary.html#term-array_like) of [`str`](https://docs.python.org/3/builtins/stdtypes.html#str)) – Substring being searched.
    If array-like, it is broadcast.
  * **start** ([`int`](https://docs.python.org/3/builtins/functions.html#int) or [array-like](https://numpy.org/doc/stable/glossary.html#term-array_like) of [`int`](https://docs.python.org/3/builtins/functions.html#int)) – Left edge index.
    If array-like, it is broadcast.
  * **end** ([`int`](https://docs.python.org/3/builtins/functions.html#int) or [array-like](https://numpy.org/doc/stable/glossary.html#term-array_like) of [`int`](https://docs.python.org/3/builtins/functions.html#int)) – Right edge index.
    If array-like, it is broadcast.
* **Returns:**
  **found** ([array](https://numpy.org/doc/stable/glossary.html#term-array) of [`int`](https://docs.python.org/3/builtins/functions.html#int))
