r - 使用R在字符串中最后一个反斜杠后提取8个字符
问题描述
我有一个向量,其中包含 R 中的以下类型的数据(不仅仅是这里的两个):
df <- c("04 IRB/IEC and other Approvals\04.01 IRB/IEC Trial Approvals\04.01.02 IRB/IEC Approval",
"01 Trial Management\01.01 Trial Oversight\01.01.02 Trial Management Plan")
所有观察都具有相同的结构,带有两个反斜杠。我想在最后一个反斜杠(或包括句点的数值)之后立即提取 8 个字符。这是我在 R 中想要的示例(我一直在尝试使用 stringr):
df2 <- c("04.01.02", "01.01.02")
如果有人熟悉 DIA TMF 参考模型,我想要来自 DF 的区域/部分/工件编号。
谢谢!
解决方案
我们可能需要
library(stringi)
library(stringr)
stri_extract_last_regex(str_replace_all(df, setNames(c(" 04", " 01"),
c("\004", "\001"))), "\\d{2}\\.\\d{2}\\.\\d{2}")
[1] "04.01.02" "01.01.02"
推荐阅读
- javascript - 打开多个 URL 时如何删除浏览器弹出窗口阻止程序
- typescript - 是否可以开玩笑地模拟从模块内部调用的函数?
- powershell - Where-Object 在所有先决条件上从左到右匹配?
- reactjs - 如何在反应 js 中捕获 net::ERR_CONNECTION_TIMED_OUT?
- javascript - iconv 解码流中遇到的特殊字符
- css - 如何使用css变换构建45度倒梯形?
- jira - 附在 Jira rest API 上的 webm 格式不在问题附件中预览
- reactjs - 拖动 tomkp/react-split-pane 的调整大小后无法设置 defaultSize
- node.js - CERT_HAS_EXPIRED - 在从节点 js 到 php 的 post 请求中
- html - 表格主体元素与标题元素重叠