Replacing tango.text.Ascii.isearch
bauss
jacobbauss at gmail.com
Thu Oct 13 08:27:17 UTC 2022
On Wednesday, 5 October 2022 at 17:29:25 UTC, Steven
Schveighoffer wrote:
> On 10/5/22 12:59 PM, torhu wrote:
>> I need a case-insensitive check to see if a string contains
>> another string for a "quick filter" feature. It should
>> preferrably be perceived as instant by the user, and needs to
>> check a few thousand strings in typical cases. Is a regex the
>> best option, or what would you suggest?
>
> https://dlang.org/phobos/std_uni.html#asLowerCase
>
> ```d
> bool isearch(S1, S2)(S1 haystack, S2 needle)
> {
> import std.uni;
> import std.algorithm;
> return haystack.asLowerCase.canFind(needle.asLowerCase);
> }
> ```
>
> untested.
>
> -Steve
This doesn't actually work properly in all languages. It will
probably work in most, but it's not entirely correct.
Ex. Turkish will not work with it properly.
Very interesting article:
http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html
More information about the Digitalmars-d-learn
mailing list