正则表达式

R 中级

Filip Schouwenaars

DataCamp Instructor

正则表达式

  • (元)字符序列
  • 模式存在性
  • 模式替换
  • 模式提取
  • grep(), grepl()
  • sub(), gsub()
R 中级

grepl()

animals <- c("cat", "moose", "impala", "ant", "kiwi")
grepl(pattern = <regex>, x = <string>)
grepl(pattern = "a", x = animals)
TRUE FALSE  TRUE  TRUE FALSE
R 中级

grepl()

grepl(pattern = "^a", x = animals)
FALSE FALSE FALSE  TRUE FALSE
grepl(pattern = "a$", x = animals)
FALSE FALSE  TRUE FALSE FALSE
?regex
R 中级

grep()

animals <- c("cat", "moose", "impala", "ant", "kiwi")
grepl(pattern = "a", x = animals)
TRUE FALSE  TRUE  TRUE FALSE
grep(pattern = "a", x = animals)
1 3 4
R 中级

grep()

which(grepl(pattern = "a", x = animals))
1 3 4
grep(pattern = "^a", x = animals)
4
R 中级

sub(), gsub()

animals <- c("cat", "moose", "impala", "ant", "kiwi")
sub(pattern = <regex>, replacement = <str>, x = <str>)
sub(pattern = "a", replacement = "o", x = animals)
"cot"    "moose"  "impola" "ont"    "kiwi"
gsub(pattern = "a", replacement = "o", x = animals)
"cot"    "moose"  "impolo" "ont"    "kiwi"
R 中级

sub(), gsub()

animals <- c("cat", "moose", "impala", "ant", "kiwi")
sub(pattern = "a", replacement = "o", x = animals)
"cot"    "moose"  "impola" "ont"    "kiwi" 
gsub(pattern = "a", replacement = "o", x = animals)
"cot"    "moose"  "impolo" "ont"    "kiwi"
R 中级

sub(), gsub()

gsub(pattern = "a|i", replacement = "_", x = animals)
"c_t"    "moose"  "_mp_l_" "_nt"    "k_w_"
gsub(pattern = "a|i|o", replacement = "_", x = animals)
"c_t"    "m__se"  "_mp_l_" "_nt"    "k_w_"
R 中级

Passons à la pratique !

R 中级

Preparing Video For Download...