[#BloombergLP-bdlb-String-strrstrCaseless]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlb.adoc[bdlb]::xref:BloombergLP/bdlb/String.adoc[String]::strrstrCaseless
:relfileprefix: ../../../
:mrdocs:

Return the last case&hyphen;insensitive match of `subString`, or 0&period;

== Synopsis

Declared in `&lt;bdlb&lowbar;string&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
static
char const*
strrstrCaseless(
    char const* string,
    int stringLen,
    char const* subString,
    int subStringLen);
----

== Description

Return the address providing non&hyphen;modifiable access to the last position in the specified `string` having `stringLen` characters at which the specified `subString` having `subStringLen` characters is found using case&hyphen;insensitive comparison, or 0 if there is no such position&period; If `subStringLen` is 0, `subString` may be null and `string &plus; stringLen` is returned&period; The behavior is undefined unless `0 &lt;&equals; stringLen` and `0 &lt;&equals; subStringLen`&period; See &lcub;`bdlb&lowbar;stringviewutil`&rcub; for an identically named method having similar semantics taking (and returning) `bsl&colon;&colon;string&lowbar;view`&period;

== Return Value

address of the last match, or 0 if not found

== Parameters

[cols="1,4"]
|===
| Name| Description
| *string*
| haystack string
| *stringLen*
| length of `string`
| *subString*
| needle substring
| *subStringLen*
| length of `subString`
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
