std.string.lastIndexOf - multiple declarations
Function lastIndexOf
Searches for the last occurrence of a character in a string.
ptrdiff_t lastIndexOf(Char)(
const(Char)[] s,
in dchar c,
in CaseSensitive cs = Yes .caseSensitive
) pure @safe
if (isSomeChar!Char);
ptrdiff_t lastIndexOf(Char)(
const(Char)[] s,
in dchar c,
in size_t startIdx,
in CaseSensitive cs = Yes .caseSensitive
) pure @safe
if (isSomeChar!Char);
Parameters
| Name | Description |
|---|---|
| s | string to search for c in |
| c | character to search for in s |
| startIdx | index of a well-formed code point in s to start searching
from; defaults to 0 |
| cs | specifies whether comparisons are case-sensitive
(Yes) or not (No) |
Returns
If c is found in s, then the index of its last occurrence is
returned. If c is not found or startIdx is greater than or equal to
s, then -1 is returned. If the parameters are not valid UTF,
the result will still be either -1 or in the range [startIdx ..
s], but will not be reliable otherwise.
Throws
If the sequence ending at startIdx does not represent a well-formed
code point, then a UTFException may be thrown.
Example
import std .typecons : No;
string s = "Hello World";
writeln(lastIndexOf(s, 'l')); // 9
writeln(lastIndexOf(s, 'Z')); // -1
writeln(lastIndexOf(s, 'L', No .caseSensitive)); // 9
Example
import std .typecons : No;
string s = "Hello World";
writeln(lastIndexOf(s, 'l', 4)); // 3
writeln(lastIndexOf(s, 'Z', 1337)); // -1
writeln(lastIndexOf(s, 'L', 7, No .caseSensitive)); // 3
Function lastIndexOf
Searches for the last occurrence of a substring in a string.
ptrdiff_t lastIndexOf(Char1, Char2)(
const(Char1)[] s,
const(Char2)[] sub,
in CaseSensitive cs = Yes .caseSensitive
) pure @safe
if (isSomeChar!Char1 && isSomeChar!Char2);
ptrdiff_t lastIndexOf(Char1, Char2)(
const(Char1)[] s,
const(Char2)[] sub,
in size_t startIdx,
in CaseSensitive cs = Yes .caseSensitive
) pure @safe
if (isSomeChar!Char1 && isSomeChar!Char2);
Parameters
| Name | Description |
|---|---|
| s | string to search for sub in |
| sub | substring to search for in s |
| startIdx | index to a well-formed code point in s to start
searching from; defaults to 0 |
| cs | specifies whether comparisons are case-sensitive
(Yes) or not (No) |
Returns
The index of the last occurrence of sub in s. If sub is not found
or startIdx is greater than or equal to s, then -1 is
returned. If the parameters are not valid UTF, the result will still be
either -1 or in the range [startIdx .. s], but will not be
reliable otherwise.
Throws
If the sequence starting at startIdx does not represent a well-formed
code point, then a UTFException may be thrown.
Bugs
Does not work with case-insensitive strings where the mapping of
toLower and toUpper is not 1:1.
Example
import std .typecons : No;
string s = "Hello World";
writeln(lastIndexOf(s, "ll")); // 2
writeln(lastIndexOf(s, "Zo")); // -1
writeln(lastIndexOf(s, "lL", No .caseSensitive)); // 2
Example
import std .typecons : No;
string s = "Hello World";
writeln(lastIndexOf(s, "ll", 4)); // 2
writeln(lastIndexOf(s, "Zo", 128)); // -1
writeln(lastIndexOf(s, "lL", 3, No .caseSensitive)); // -1
Authors
Walter Bright, Andrei Alexandrescu, Jonathan M Davis, and David L. 'SpottedTiger' Davis