Split a String at Text Boundaries
This function locates text boundaries (like character, word, line, or sentence boundaries) and splits strings at the indicated positions.
stri_split_boundaries( str, n = -1L, tokens_only = FALSE, simplify = FALSE, ..., opts_brkiter = NULL )
str |
character vector or an object coercible to |
n |
integer vector, maximal number of strings to return |
tokens_only |
single logical value; may affect the result if |
simplify |
single logical value; if |
... |
additional settings for |
opts_brkiter |
a named list with ICU BreakIterator's settings,
see |
Vectorized over str
and n
.
If n
is negative (the default), then all text pieces are extracted.
Otherwise, if tokens_only
is FALSE
(which is the default),
then n-1
tokens are extracted (if possible) and the n
-th string
gives the (non-split) remainder (see Examples).
On the other hand, if tokens_only
is TRUE
,
then only full tokens (up to n
pieces) are extracted.
For more information on text boundary analysis
performed by ICU's BreakIterator
, see
stringi-search-boundaries.
If simplify=FALSE
(the default),
then the functions return a list of character vectors.
Otherwise, stri_list2matrix
with byrow=TRUE
and n_min=n
arguments is called on the resulting object.
In such a case, a character matrix with length(str)
rows
is returned. Note that stri_list2matrix
's fill
argument is set to an empty string and NA
,
for simplify
equal to TRUE
and NA
, respectively.
Other search_split:
about_search
,
stri_split_lines()
,
stri_split()
Other locale_sensitive:
%s<%()
,
about_locale
,
about_search_boundaries
,
about_search_coll
,
stri_compare()
,
stri_count_boundaries()
,
stri_duplicated()
,
stri_enc_detect2()
,
stri_extract_all_boundaries()
,
stri_locate_all_boundaries()
,
stri_opts_collator()
,
stri_order()
,
stri_rank()
,
stri_sort_key()
,
stri_sort()
,
stri_trans_tolower()
,
stri_unique()
,
stri_wrap()
Other text_boundaries:
about_search_boundaries
,
about_search
,
stri_count_boundaries()
,
stri_extract_all_boundaries()
,
stri_locate_all_boundaries()
,
stri_opts_brkiter()
,
stri_split_lines()
,
stri_trans_tolower()
,
stri_wrap()
test <- 'The\u00a0above-mentioned features are very useful. ' %s+% 'Spam, spam, eggs, bacon, and spam. 123 456 789' stri_split_boundaries(test, type='line') stri_split_boundaries(test, type='word') stri_split_boundaries(test, type='word', skip_word_none=TRUE) stri_split_boundaries(test, type='word', skip_word_none=TRUE, skip_word_letter=TRUE) stri_split_boundaries(test, type='word', skip_word_none=TRUE, skip_word_number=TRUE) stri_split_boundaries(test, type='sentence') stri_split_boundaries(test, type='sentence', skip_sentence_sep=TRUE) stri_split_boundaries(test, type='character') # a filtered break iterator with the new ICU: stri_split_boundaries('Mr. Jones and Mrs. Brown are very happy. So am I, Prof. Smith.', type='sentence', locale='en_US@ss=standard') # ICU >= 56 only
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.