Learn R Programming

stringi (version 0.1-25)

stri_locate_all_fixed: Locate Occurrences of a Fixed Pattern

Description

These functions find the indices, at which a given pattern matches a substring of the input string.

Usage

stri_locate_all_fixed(str, pattern, opts_collator = list())

stri_locate_first_fixed(str, pattern, opts_collator = list())

stri_locate_last_fixed(str, pattern, opts_collator = list())

Arguments

str
character vector
pattern
character vector
opts_collator
a named list as generated with stri_opts_collator with Collator options, or NA for fast but locale-unaware byte comparison

Value

  • For stri_locate_all_charclass, a list of max(length(str), length(pattern)) integer matrices is returned . The first column gives the start positions of matches, and the second column gives the end position. Moreover, you may gen two NAs in one row for no match or NA arguments.

    For stri_locate_first_fixed and stri_locate_last_fixed, you get an integer matrix with max(length(str), length(pattern)) rows, and two columns, giving the start and end positions of the first or the last matches, respectively, and NAs iff not found.

Details

Vectorized over str and pattern.

See stringi-search-fixed for more details on Locale-Sensitive Text Searching in stringi.

Note the difference between stri_locate_last_fixed and stri_locate_last_regex for overlapping pattern matches. In stri_locate_last_fixed, search is done from-the-end.

Pass opts_collator equal to NA for much faster, but locale unaware, (exact) bitwise comparisons. For a natural language text this may be not what you really want.

See Also

Other indexing: stri_locate_all_charclass, stri_locate_all_charclass, stri_locate_first_charclass, stri_locate_first_charclass, stri_locate_last_charclass, stri_locate_last_charclass; stri_locate_all_regex, stri_locate_all_regex, stri_locate_first_regex, stri_locate_first_regex, stri_locate_last_regex, stri_locate_last_regex; stri_locate_all; stri_locate_first; stri_locate_last; stri_locate; stri_sub, stri_sub<-

Other locale_sensitive: stri_cmp, stri_compare; stri_count_fixed; stri_detect_fixed; stri_enc_detect2; stri_opts_collator; stri_order, stri_sort; stri_replace_all_fixed, stri_replace_all_fixed, stri_replace_first_fixed, stri_replace_first_fixed, stri_replace_last_fixed, stri_replace_last_fixed; stri_split_fixed, stri_split_fixed; stri_trans_tolower, stri_trans_totitle, stri_trans_toupper; stringi-locale; stringi-search-fixed

Other search_fixed: stri_count_fixed; stri_detect_fixed; stri_extract_all_fixed, stri_extract_all_fixed,, stri_extract_first_fixed, stri_extract_first_fixed,, stri_extract_last_fixed, stri_extract_last_fixed; stri_opts_collator; stri_replace_all_fixed, stri_replace_all_fixed, stri_replace_first_fixed, stri_replace_first_fixed, stri_replace_last_fixed, stri_replace_last_fixed; stri_split_fixed, stri_split_fixed; stringi-search-fixed; stringi-search

Other search_locate: stri_extract_all_fixed, stri_extract_all_fixed,, stri_extract_first_fixed, stri_extract_first_fixed,, stri_extract_last_fixed, stri_extract_last_fixed; stri_locate_all_charclass, stri_locate_all_charclass, stri_locate_first_charclass, stri_locate_first_charclass, stri_locate_last_charclass, stri_locate_last_charclass; stri_locate_all_regex, stri_locate_all_regex, stri_locate_first_regex, stri_locate_first_regex, stri_locate_last_regex, stri_locate_last_regex; stri_locate_all; stri_locate_first; stri_locate_last; stri_locate; stringi-search

Examples

Run this code
stri_locate_all_fixed(c('AaaaaaaA', 'AAAA'), 'a')
stri_locate_first_fixed(c('AaaaaaaA', 'aaa', 'AAA'), 'a')
stri_locate_last_fixed(c('AaaaaaaA', 'aaa', 'AAA'), 'a')

#first row is 1-2 like in locate_first
stri_locate_all_fixed('bbbbb', 'bb')
stri_locate_first_fixed('bbbbb', 'bb')
# but last row is 3-4, unlike in locate_last,
# keep this in mind [overlapping pattern match OK]!
stri_locate_last_fixed('bbbbb', 'bb')

locate <- stri_locate_first_fixed('stringi - REXAMINE', letters)
rownames(locate) <- letters
locate

Run the code above in your browser using DataLab