R 中的负向前瞻未按预期运行

2024-04-13

我正在尝试替换以以下开头的字符串中的实例abc在我正在 R 中使用的文本中。输出文本在 HTML 中经过几次突出显示,因此我需要替换以忽略 HTML 插入符内的文本。

以下内容似乎在 Python 中有效,但我在 R 中的正则表达式上没有得到任何命中。感谢所有帮助。

test <- 'abcdef abc<span abc>defabc abcdef</span> abc defabc'
gsub('\\babc\\(?![^<]*>\\)', 'xxx', test)

预期输出:

xxxdef xxx<span abc>defabc xxxdef</span> xxx defabc

相反,它忽略了所有实例abc.


您需要删除不必要的转义并使用perl=TRUE:

test <- 'abcdef abc<span abc>defabc abcdef</span> abc defabc'
gsub('\\babc(?![^<]*>)', 'xxx', test, perl=TRUE)
## => [1] "xxxdef xxx<span abc>defabc xxxdef</span> xxx defabc"

See the 在线 R 演示 http://ideone.com/qI9jWB

当你逃脱时(,它匹配文字(符号,所以,在你的模式中,\\(?![^<]*>\\)匹配一个(1次或0次,那么!,然后 0+ 个字符,除了<, then >和一个字面意思)。在我的正则表达式中,(?![^<]*>)是一个否定的前瞻,如果abc后跟任何 0+ 字符,除了<然后一个>.

Without perl=TRUE, R gsub使用不支持环视(甚至环视)的 TRE 正则表达式风格。因此,你必须告诉gsub via perl=TRUE您希望使用 PCRE 引擎。

See the 在线 PCRE 正则表达式演示 https://regex101.com/r/pF0hON/1.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

R 中的负向前瞻未按预期运行 的相关文章

  • Perl:HTTP::微小删除留下损坏的锚标记

    我编写了一个脚本 该脚本收集从数据库读取的缓冲区内的所有 URL 检查该页面是否仍然存在 并使用 HTTP Tiny 从缓冲区中删除 URL 如果该 URL 无法访问或返回无效 问题是 HTTP Tiny 删除左锚标记 例如此处无效的文本
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • 计算互相关函数?

    In R 我在用ccf or acf计算成对互相关函数 以便我可以找出哪个移位给我带来最大值 从它的外观来看 R给我一个标准化的值序列 Python 的 scipy 中是否有类似的东西 或者我应该使用fft模块 目前 我正在这样做 xcor
  • Pure Bash 替换捕获组

    我有这个示例字符串 test string 13A6 该字符 数字可以是从 0 到 9 以及从 A 到 F 我想要这个输出 1 3 A 6 我有这个工作 result echo test string sed s g 我想在没有 sed 的
  • 不同 R/lme4 版本的单一拟合结果不匹配

    我试图将 R 版本 3 5 3 lme4 1 1 18 1 的随机效应估计与 R 版本 4 1 1 lme4 1 1 27 1 相匹配 然而 当存在奇异拟合时 这两个版本之间的随机效应存在微小差异 我对奇点警告很满意 但令人费解的是不同版本
  • 对 data.table 中的列表列执行操作

    假设我有一个data table 例如dt lt data table foo list 1 3 4 6 bar c 2 7 如何使用 dt 框架对 foo 向量列表执行操作 操作可能是将 bar 添加到 foo 返回列表 3 5 11 1
  • 如何使用 R 将每个文件的数据添加为附加行,从而将不同的 .csv 文件合并为一个完整的文件?

    我有几个不同的文件夹 它们都包含一个 csv 文件 所有这些 csv 文件都有一个单独的列 其中包含实验的一种条件的数据 我想以将每个文件的数据添加为新列的方式合并这些 csv 文件 目前 它看起来像这样 C1 csv 102 106 15
  • R 中按时间划分的平均值

    我每秒测量一次化合物浓度 我想求 30 秒和 60 秒的平均值 我一直在阅读这里的帖子 我尝试过lubridate and dplyr 但没有运气 我正在努力完成这项工作 但我一直没能做到 我正在从 SAS 过渡到 R 所以请耐心等待 这是
  • 从日期变量创建月末日期

    我有一个包含日期变量的大型数据框 它反映了该月的第一天 有没有一种简单的方法来创建代表该月最后一天的新数据框日期变量 以下是一些示例数据 date start month seq as Date 2012 01 01 length 4 by
  • R中的字典数据结构

    在 R 中 我有 例如 gt foo lt list a 1 b 2 c 3 如果我输入foo I get a 1 1 b 1 2 c 1 3 我怎样才能看透foo仅获取 键 列表 在这种情况下 a b c R 列表可以具有命名元素 因此可
  • 为什么数据帧上的 is.vector 不返回 TRUE?

    tl dr R 中的向量到底是什么 长版 R 中很多东西都是向量 例如 数字是长度为 1 的数值向量 is vector 1 1 TRUE 列表也是一个向量 is vector list 1 1 TRUE 好的 所以列表是一个向量 显然 数
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • Quantmod 的简单功能不再起作用

    我明天要交论文 我收到了一条关于 quantmod 的非常奇怪的错误消息 这是我在过去几周使用这个包时从未遇到过的 我无法导入特定于道琼斯指数 DJI 的数据 我收到以下错误消息 getSymbols DJI src yahoo from
  • 使用officer R导出时如何提高ggplots的分辨率

    我想将图表导出到 PPT 并使用Officer 包来实现相同的目的 但是 图表的默认分辨率较低 我想更改它 我目前正在使用以下电话 ph with gg p1 type chart res 1200 其中 p1 是 ggplot 对象 运行
  • Golang 正则表达式在字符串之间替换

    我有一些可能采用以下形式的字符串 MYSTRING MYSTRING n MYSTRING n MYSTRING randomstringwithvariablelength n 我希望能够将其正则表达式为MYSTRING foo 基本上替
  • 警告消息 - 来自 dummies 包的 dummy

    我正在使用 dummies 包为分类变量生成虚拟变量 其中一些变量具有两个以上类别 testdf lt data frame A as factor c 1 2 2 3 3 1 B c A B A B C C C c D D E D D E
  • 为什么这些非捕获正则表达式组不能正常工作?

    所以我花了很多时间在另一个堆栈溢出问题上 同样的问题又出现在上一个问题上 非捕获组并没有像我期望的那样工作 至少我是这么认为的 这是一个愚蠢的例子 类似于其他人的 CSS 测试字符串 这是我的正则表达式 rgb S 这是测试字符串 1px
  • 扩展 RegExp 以获取文件扩展名

    我知道 已经有很多基于 RegExp 的解决方案 但是我找不到适合我需求的解决方案 我有以下函数来获取 URL 的各个部分 但我还需要文件扩展名 var getPathParts function url var m url match w
  • 实现 XGboost 自定义目标函数

    我正在尝试使用 XGboost 实现自定义目标函数 在 R 中 但我也使用 python 所以有关 python 的任何反馈也很好 我创建了一个返回梯度和粗麻布的函数 它工作正常 但是当我尝试运行 xgb train 时它不起作用 然后 我
  • 如何按时间间隔匹配数据帧?

    这是我从数据记录器导入原始数据时经常出现的问题 温度记录仪设置为每十分钟记录一次温度 单独的气体记录仪设置为记录最后十分钟间隔内使用的气体 我想将这两个记录器的数据合并到一个数据框中进行绘图和分析 但时间并不完全一致 我希望每十分钟的时间段

随机推荐

  • Powershell 将变量传递给带有通配符的过滤器

    我在这方面遇到了困难 我知道这可能是一个简单的语法问题 我不知道如何将此变量传递到代码块中并正确确认它 user Some Person 这正如我所期望的那样 get aduser filter Samaccountname eq user
  • 时间:2019-03-17 标签:c#InfragisticsUltraChartLineChart

    有人可以提供一个从数据表将线系列添加到 UltraChart 的简单示例吗 该表具有时间序列值 x 轴上的时间值 y 轴上的测量 双精度 值 到目前为止 我见过的将时间序列添加到图表中的唯一示例是针对一组有限的硬编码数据点 我希望能够从表中
  • 如何从字符串中提取数字?

    我有包含路径的字符串 string toto titi 12 tata 2 abc def 我只想从该字符串中提取数字 要提取第一个数字 tmp string toto titi num1 tmp tata 要提取第二个数字 tmp str
  • 从 Oracle 转换为日期时间

    我知道有很多类似的问题 但我找不到我要找的东西 这是我的甲骨文日期 string testdate 2014 01 07 15 00 00 0000000 这是我尝试转换为日期时间的方法 DateTime ParseExact testda
  • ASP.NET MVC - 模型绑定一组动态生成的复选框 - 如何

    我正在尝试对一组动态生成的复选框进行模型绑定 以便在控制器操作中处理它们 但无法进行模型绑定 这是场景 我的 ViewModel 类 DocumentAddEditModel 包含一个字典 Dictionary 其中每个条目的字符串是每个复
  • Python opencv 检测棋盘

    我正在尝试获取棋盘图案的角点 并认为我可以将 openCV 与cv2 findChessboardCorners 但是 我找不到传递给该函数的良好参数 以便它成功检测棋盘 我认为该图像适合此功能 如果不是 我不知道我应该做什么预处理 这是我
  • 简单的 MySQL 语法错误 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在运行以下代码 但找不到错误是什么 谁能建议我应该检查什么 result mysql query SELECT FROM ta
  • Elastic Beanstalk 运行部署后脚本

    我的 Node js 应用程序由两部分组成 一个 Express 后端和一个 React 前端 我在这个结构中有两个 package json 文件 package json app package json 我想要做的是在我的前端文件夹应
  • 在标题中添加图像标题和/或描述

    是否可以操纵图像标题的输出内容以这种方式 不仅在每个图像下输出标题 而且还输出图像标题和 或描述 在媒体库中定义 可能通过functions php 是的 可以操纵the content 您想要做的最简单的方法是在您的functions p
  • NSUserDefaults 和 Lion 下的沙箱

    根据 Apple 的要求 将我的项目之一移至支持沙箱 我像这样使用 UserDefaults NSUserDefaults standardUserDefaults setObject myNumber forKey myNumberKey
  • 使用 XSLT 将 XML 转换为 JSON

    我想使用 XSLT 将一些 XML 转换为 JSON XML 如下所示
  • InnoDB导致MySQL无法重启

    我无法重新启动 MySQL 或从 InnoDB 表 恢复 MySQL 我有一个使用 Ubuntu 16 04 的 WSL 由于 未知 的意外 早上我无法访问 MySQL 尝试重新启动它 所有错误 尝试了有关 InnoDB 和日志 文件的所有
  • 告诉 git 不要合并二进制文件而是选择

    当二进制文件 swf jar 和 flv 在本地更改时 我尝试引入更改 git 会尝试合并它们并报告冲突 然后 我分支到一个临时分支 并提交本地更改的二进制文件 并在拉取后使用递归策略将它们合并回来 太多工作 有没有办法告诉 git 不要尝
  • 什么是 Ruby on Rails Action 电缆适配器?

    通过 RoR 动作电缆导轨查看http edgeguides rubyonrails org action cable overview html subscription adapter http edgeguides rubyonrai
  • h5py 是否将整个文件读入内存?

    h5py是否将整个文件读取到内存中 如果是这样 如果我有一个非常非常大的文件怎么办 如果不是的话 我每次要单个数据就从硬盘取数据会不会很慢 我怎样才能让它更快 h5py是否将整个文件读取到内存中 不 不是的 特别是 切片 dataset 5
  • 使用 CMake 在主项目之前强制构建外部项目(使用 buildtools)

    我想在开始构建我的主项目之前构建 gsl 我将以下行添加到 rootCMakeLists txt file cmake minimum required VERSION 2 8 project moose include CheckIncl
  • 在pytorch张量中过滤数据

    我有一个张量X like 0 1 0 5 1 0 0 1 2 0 我想实现一个名为的函数filter positive 它可以将正数据过滤成新的张量并返回原始张量的索引 例如 new tensor index filter positive
  • 如何查找联系人图像支持的最大图像尺寸?

    背景 从 jelly bean 4 1 开始 android 现在支持联系人图像720x720 http developer android com about versions jelly bean html android 41 之前
  • 如何在 json 模式中创建模式引用的嵌套列表(数组)

    我正在尝试构建一个架构 其中包含我想要强制架构的项目列表 基本上这是我想要根据架构验证的数据 data VIN 123 timestamp xxxx model jeep inspections door badge expected ye
  • R 中的负向前瞻未按预期运行

    我正在尝试替换以以下开头的字符串中的实例abc在我正在 R 中使用的文本中 输出文本在 HTML 中经过几次突出显示 因此我需要替换以忽略 HTML 插入符内的文本 以下内容似乎在 Python 中有效 但我在 R 中的正则表达式上没有得到