> findAmong has problems with utf8

It doesn't. You are slicing wrong.
```D
writeln(s[$ - r.length .. $]); // here you get "llo"
```