r - 正向 Lookbehind 和 Lookahead 到字符串末尾
问题描述
我的字符串模式如下所示:
UNB+UNOC:3+4399945681577+_GLN_Company__+180101:0050+10870
我试图提取倒数第二个之后的所有内容+
,即180101:0050+10870
.
到目前为止,我设法180101:0050
用这个表达式解决了倒数第二个块,(?<=\+)[^\+]+(?=\+[^\+]*$)
但没有包括最后一个块,包括最后一个 +。这是我的示例:regex101
该表达式适用于 R,我稍后仍需要转义字符。这种格式仅用于 Regex101 中的测试目的。
解决方案
我们可以根据字符串+
末尾 ( )的出现来捕获组。$
sub(".*\\+([^+]+\\+[^+]+$)", "\\1", str1)
#[1] "180101:0050+10870"
数据
str1 <- "UNB+UNOC:3+4399945681577+_GLN_Company__+180101:0050+10870"
推荐阅读
- c# - Azure Function Using Graph 我得到“无法加载文件或程序集'System.Text.Json”
- javascript - 如何在 Angular 中设置默认路由?
- sql - 为虚构的餐厅创建 SQL 数据库脚本
- angular - 如何验证打字稿中的多个选择框
- python - 我的熊猫数据框突然不会显示十进制数字?熊猫有什么变化吗?
- android-studio - 以编程方式设置 spinnerMode
- java - 获取 - 连接重置;嵌套异常是 javax.net.ssl.SSLException:使用 SFDC API 时连接重置异常
- python - 如何在熊猫的特定索引处赋值
- node.js - 停止瀑布对话框
- postgresql - Postgres LDAP 身份验证