Hide navigation sidebar
Hide table of contents sidebar
Back to top
Edit this page
Toggle table of contents sidebar

# about_search_fixed:

## Description

String searching facilities described here provide a way to locate a specific sequence of bytes in a string. The search engine’s settings may be tuned up (for example to perform case-insensitive search) via a call to the `stri_opts_fixed` function.

## Byte Compare

The fast Knuth-Morris-Pratt search algorithm, with worst time complexity of O(n+p) (`n == length(str)`, `p == length(pattern)`) is implemented (with some tweaks for very short search patterns).

Be aware that, for natural language processing, fixed pattern searching might not be what you actually require. It is because a bitwise match will not give correct results in cases of:

1. accented letters;

2. conjoined letters;

3. ignorable punctuation;

4. ignorable case,

see also about_search_coll.

Note that the conversion of input data to Unicode is done as usual.

## Author(s)

Marek Gagolewski and other contributors

## See Also

The official online manual of stringi at https://stringi.gagolewski.com/

Gagolewski M., stringi: Fast and portable character string processing in R, Journal of Statistical Software 103(2), 2022, 1-59, doi:10.18637/jss.v103.i02

Other search_fixed: `about_search`, `stri_opts_fixed()`

Other stringi_general_topics: `about_arguments`, `about_encoding`, `about_locale`, `about_search`, `about_search_boundaries`, `about_search_charclass`, `about_search_coll`, `about_search_regex`, `about_stringi`