我可以使用perlin 参数gsub来更改各个子表达式的大小写。例如,如果我想找到一个小写字母i后跟撇号或字符串结尾(此处为冗余),我可以这样做:
gsub("(\\bi(\\b|'))", "\\U\\1", "i am able to move do it as i'm going to.", perl = TRUE)
## [1] "I am able to move do it as I'm going to."
注意I和I'm是大写但it不是。
鉴于 base 和stringi使用不同的正则表达式引擎,我如何使用stringi做同样的事情(是否可能) 。
stri_replace_all_regex("i am able to move do it as i'm going to.", "(\\bi(\\b|'))", "\\U$1")
## [1] "1 am able to move do it as 1'm going to."