Если вам нужно найти состояния с двумя или более "a"
s в них, вы можете использовать:
grep('.*a.*a.*', state.name, value = TRUE, ignore.case = TRUE)
# [1] "Alabama" "Alaska" "Arizona" "Arkansas"
# [5] "California" "Delaware" "Hawaii" "Indiana"
# [9] "Kansas" "Louisiana" "Maryland" "Massachusetts"
#[13] "Montana" "Nebraska" "Nevada" "North Carolina"
#[17] "North Dakota" "Oklahoma" "Pennsylvania" "South Carolina"
#[21] "South Dakota"
Если вам нужно ровно два "a"
s, мы можем использовать str_count
для подсчета количество "a"
s, а затем подмножество.
state.name[stringr::str_count(state.name, 'a|A') == 2]
# [1] "Arizona" "California" "Delaware" "Hawaii"
# [5] "Indiana" "Kansas" "Louisiana" "Maryland"
# [9] "Massachusetts" "Montana" "Nebraska" "Nevada"
#[13] "North Carolina" "North Dakota" "Oklahoma" "Pennsylvania"
#[17] "South Carolina" "South Dakota"