r - 正则表达式:在两个字符/字符串之间提取字符串
问题描述
在我的情况下,我有一个模型公式(作为字符串)并且想要提取特定参数的值id
。现在我找到了一种方法,可以在没有所需字符串值的情况下返回字符串。我想要完全相反,我只想要结果中缺少的字符串值:
xx <- "gee(formula = breaks ~ tension, id = wool, data = warpbreaks)"
sub("(?=(id=|id =))([a-zA-Z].*)(?=,)", "\\1", xx, perl =T)
#> [1] "gee(formula = breaks ~ tension, id =, data = warpbreaks)"
wool
返回值中缺少,但我只想wool
得到结果字符串...谁能帮我找到正确的正则表达式模式?
解决方案
您可以parse()
使用字符串并按id
名称获取参数,而不是此处的正则表达式。
as.character(parse(text = xx)[[1]]$id)
# [1] "wool"
推荐阅读
- javascript - 将 .env 常量传递给内部目录
- functional-programming - 为什么 ocaml 有可变数组?
- python - sklearn:使用 Pipeline 和 TransformedTargetRegressor 缩放 x(数据)和 y(目标)
- reactjs - 谷歌分析会话管理在不同选项卡中的同一应用程序,在一个反应应用程序中
- asp.net-core - Linux Ubuntu 上生产中的 Microsoft.Extensions.Logging.Log4Net 问题
- javascript - 如何在平面列表中仅渲染一次特定元素 - React Native
- java - 从 jmeter 中的 JSON 请求有效负载生成 HMAC sha256
- java - 基于元素的最长公共前缀
- javascript - React Native 将 ref 传递给用 HOC 包装的功能组件
- javascript - 使用 Webgl 创建三角形的随机位置