R,stringr::str_extract_all:获取正则表达式列表中指定的所有事件
R, stringr::str_extract_all: Get all occurences specified in regex list
真的很简单,但我可以让正则表达式的 'greediness' 像我想要的那样工作。假设您有:
unlist(stringr::str_extract_all("XXXXSXTXXX","([A-Z]{2}[T|S][A-Z]{2})"))
这只给出第一个匹配项:
[1] "XXSXT"
如何更改正则表达式行为以同时匹配 S 和 T(不使用两个单独的模式),例如:
[1] "SXTXX" "XXSXT"
您需要使用 lookahead
和 perl=True
选项在 R 中进行匹配。
(?=([A-Z]{2}[TS][A-Z]{2}))
查看演示。
真的很简单,但我可以让正则表达式的 'greediness' 像我想要的那样工作。假设您有:
unlist(stringr::str_extract_all("XXXXSXTXXX","([A-Z]{2}[T|S][A-Z]{2})"))
这只给出第一个匹配项:
[1] "XXSXT"
如何更改正则表达式行为以同时匹配 S 和 T(不使用两个单独的模式),例如:
[1] "SXTXX" "XXSXT"
您需要使用 lookahead
和 perl=True
选项在 R 中进行匹配。
(?=([A-Z]{2}[TS][A-Z]{2}))
查看演示。