这个正则表达式:
str_extract_all("This is a Test , ' ' " , "[a-z]+")
返回:
[1] "his" "is" "a" "est"
如何修改,这是不区分大小写的?
`[1] "This" "is" "a" "Test"`
应该返回
/i
应该区分区分大小写吗?
尝试str_extract_all("This is a Test , ' ' " , "[a-z]+/i")
返回
[[1]]
character(0)
答案 0 :(得分:3)
stringr functions有一个特殊符号:
regex(pattern, ignore_case = FALSE, multiline = FALSE, comments = FALSE, dotall = FALSE, ...)
您可以使用
> str_extract_all("This is a Test , ' ' " , regex("[a-z]+", ignore_case=TRUE))
[[1]]
[1] "This" "is" "a" "Test"
或者,使用内联i
修饰符(?i)
:
str_extract_all("This is a Test , ' ' " , "(?i)[a-z]+")
答案 1 :(得分:2)
您可以尝试在您要搜索的集合中包含大写字母。
str_extract_all("This is a Test , ' ' " , "[A-Za-z]+")
如果您只希望第一个字母大写,您可以尝试下面的代码。它允许第一个字母不区分大小写,然后只有小写。
str_extract_all("This is a Test , ' ' " , "[A-Za-z][a-z]*")