Try the unit Uregexpr instead of regexpr. Uregexpr is UTF16.
Assign the text to search to a unicodestring before using it.
And convert back to UTF8 afterwards if necessary.
The presence of this uregexpr depends on the FPC version. It is for sure in 3.2.0 and higher, not sure about 3.0.4.
Functionality is the exact same.