gpt4 book ai didi

r - 在 R 中使用 str_extract 在带有正则表达式的子字符串之前提取数字

转载 作者:行者123 更新时间:2023-12-04 22:26:49 25 4
gpt4 key购买 nike

我想在stringr包中使用str_extract从XX nights etcetc形式的字符串中提取数字.

我目前正在这样做:

library(stringr)

str_extract("17 nights$5 Days", "(\\d)+ nights")

但那又回来了
"17 nights"
而不是 17 .

我怎样才能只提取数字?我认为用括号指定提取组会起作用,但事实并非如此。

最佳答案

您可以使用前瞻正则 express (?=)

library(stringr)

str_extract("17 nights$5 Days", "(\\d)+(?= nights)")
(\d) - 一个数字
(\d)+ - 一位或多位数字
(?= nights) - 出现在“nights”之前
背后的样子 (?<=)也可以派上用场。
一个很好的引用是来自 Rstudio 网站的备忘单: https://github.com/rstudio/cheatsheets/raw/master/regex.pdf

关于r - 在 R 中使用 str_extract 在带有正则表达式的子字符串之前提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57438472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com