R字母数字字符串范围



我已经设法从字符串中提取所有以"N_"开头的值,但是我不能精确地提取那些具有一定范围的数字。是一个R数据帧,我有这样的东西

V1                                 N_words 
(N_R33A, N_R35B, N_T44N, J_T7B)    N_R33A, N_R35B, N_T44N

我期望的输出将具有所有N_

的特定范围。
V1                                 N_words (range 30-35)
(N_R33A, N_R35B, N_T44N, J_T7B)    N_R33A, N_R35B

我使用的代码是,但只是提取N_,我似乎不能选择一个范围,我也创建了一个新的列到我的x数据帧与提取的词:

x$N_words = str_extract_all(x$V1, "N_([A-Z]|[0-9])+")

一个选项是修改正则表达式:

x = "(N_R33A, N_R35B, N_T44N, J_T7B)"
str_extract_all(x, "N_[A-Z]3[0-5][A-Z]")
# [[1]]
# [1] "N_R33A" "N_R35B"
  • 匹配N_
  • 后接大写字母([A-Z])
  • 3
  • 后接0、1、2、3、4或5 ([0-5])。
  • 后接大写字母([A-Z])

最新更新