我可以使用perl
中的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."