正则表达式正在抓取前面的字符

2024-01-12

所以我在正则表达式中遇到了一些不一致的行为

我的正则表达式:

(?<=test\\\\)(.*)(?=\",)

输入字符串:

"test.exe /c echo teststring > \\\\.\\test\\teststring",

当我运行这个时https://Regex101.com https://Regex101.com

我得到了价值teststring但是当我在 F# 中运行它时

Regex.Match(inputString, "(?<=test\\\\)(.*)(?=\",)")

I get \teststring后退。我的目标是得到公正teststring。我不确定我做错了什么。


我使用三引号字符串取得了成功。那么只需要考虑正则表达式转义,而不需要考虑 F# 字符串转义。

let inputString = """test.exe /c echo teststring > \\\\.\\test\\teststring","""
let x = Regex.Match(inputString, """(?<=test\\\\)(.*)(?=\",)""")

“测试字符串”出来了

源中的字符串显示为

(?<=test\\)(.*)(?=",)

如果您不想使用三引号或逐字,则必须在 F# 中编写:

"(?<=test\\\\\\\\)(.*)(?=\\\",)"

F# 中的此字符串使用反斜杠来转义反斜杠和引号字符。一个位置连续有八个反斜杠,这将成为字符串值中的四个实际反斜杠。还有这样的:

\\\"

这会转换为实际字符串值中的一个实际的 \ 和一个实际的 " 。

所以我们最终得到一个字符串值

(?<=test\\\\)(.*)(?=\",)

这是馈送到正则表达式引擎的实际字符串值。与 F# 编译器一样,正则表达式引擎也使用反斜杠来转义字符。这就是为什么任何实际的反斜杠都必须加倍然后再加倍。

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

正则表达式正在抓取前面的字符 的相关文章

  • 从字符串中提取第一个数字

    我有一个字符串 thisLine 其中包含由空格分隔的 11 个数字 我只想获取第一个数字 我尝试了命令 grep d d thisLine value TRUE 它返回整个字符串 而不是第一个数字 如何只返回第一个数字 我确信有很多可能性
  • 如何使用正则表达式获取两个特定字符“:”和“@”之间的字符串部分?

    如何获取 SIP URI 的一部分 例如我有 URIsip email protected cdn cgi l email protection 我需要得到只是username我用 sip 表达式 但出现的结果是username 我如何从匹
  • 需要一个数字或一个非字母数字字符的密码正则表达式

    我正在寻找一个相当具体的正则表达式 我几乎有了它 但还不完全有 我想要一个至少需要 5 个字符的正则表达式 其中至少有一个字符是either一个数值or非字母数字字符 这是我到目前为止所拥有的 d a z 5 20 所以问题出在 或 部分
  • 我可以提供类型作为 F# 中类型提供程序的输入吗?

    这样做有什么我应该注意的陷阱吗 您知道处理我可能遇到的相同 pb 的现有代码吗 Thks 不幸的是 您无法将类型作为静态参数传递给类型提供程序 使用传递的静态参数MyProvider lt first argument 42 gt 必须是原
  • 标记(lex?parse?)正则表达式

    使用 Ruby 我想获取一个 Regexp 对象 或表示有效正则表达式的字符串 您的选择 并将其标记化 以便我可以操作某些部分 具体来说 我想采用这样的正则表达式 字符串 regex var w parts foo bar 并创建一个替换字
  • 如何从 Python 列表中删除日期

    我有一个标记化文本列表 list of words 看起来像这样 list of words 08 20 2014 10 04 27 pm complet vendor per mfg recommend 08 20 2014 10 04
  • 重定向 url 的正则表达式

    是否有一个正则表达式可以匹配这些 url 重定向情况 我已经尝试了几个小时了 我得到的最接近的是 c p 但它不匹配 p or c https regex101 com r ezb0jX 1 https regex101 com r ezb
  • 使用 javascript 将多行、缩进的 json 转换为单行

    我想出了以下函数 用于将多行 缩进的 json 转换为单行 function text var outerRX s n r g innerRX s n r return text replace outerRX function 0 1 r
  • 尝试在 Linux 上使用 Clang++ 编译 c++11 正则表达式教程时出错

    我正在努力追随本教程 http solarianprogrammer com 2011 10 12 cpp 11 regex tutorial 关于 C 11 中的正则表达式 当我尝试编译这个小代码示例时 我收到这些错误 clang std
  • RewriteCond REQUEST_URI - ^ 未按预期工作

    我正在 codeigniter 中构建一个网站 我在 htaccess 文件中有一系列重写条件和规则 第一组规则根据 uri 的第一段打开或关闭 SSL 然后它再次循环 如果找到匹配项 则适当地重定向页面 如果没有匹配项 并且 uri 不以
  • 正则表达式字符串中第一个和最后一个非点的位置

    我希望找到字符串的第一个和最后一个非点元素的位置 理想情况下我想这样做regex在基地R 我已经写过R解决问题的代码 不过 我对一个感兴趣regex解决方案 感谢您的任何建议 这是一个示例数据集和R代码以获得所需的结果 此代码拆分字符串并使
  • 我可以缩短这个正则表达式吗?

    我需要检查字符串是否符合特定的 ID 格式 ID的格式如下 aBcDe fghIj KLmno pQRsT uVWxy 由五个大写或小写字母组成的五个块的序列 由一个破折号分隔 我有以下有效的正则表达式 string idFormat a
  • .htaccess 异常导致主目录出现问题

    这是我的目录结构 localhost or livehost app bootstrap public vendor code demo 这是我的 htaccess
  • 正则表达式 '?' 的类似物(前一项可选)在T-SQL中像什么?

    我想知道 是否可以翻译包含 的正则表达式 前面的项目可选 在 T SQL LIKE 模式中 DB 端无需任何操作 例如 31 4 我可以将其分成几个子句 但如果正则表达式包含很多 这不太方便 LIKE不使用正则表达式 并且它使用的模式语言没
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任
  • 如何仅删除单括号并保留配对的括号

    你好 我亲爱的老师 R 用户朋友们 我最近开始认真学习正则表达式 最近我遇到了一种情况 我们只想保留配对括号 并省略未配对的 这是我的样本数据 structure list t1 c Book Pg 1 Website Online Jou
  • 解析西班牙姓氏

    西班牙姓氏由三部分组成 父亲的名字 可选的母亲姓名 可选配偶的父亲姓名 这三个部分中的每一部分都是一个单词 前面可能带有 De Del De La De Los 或 De Las 这些前缀中的每一个都以大写字母开头 并且每个部分可能只有一个
  • 如何在 F# 中实现返回 void 的接口成员

    想象一下 C 中的以下接口 interface IFoo void Bar 我如何在 F 中实现这一点 我在 30 分钟的在线搜索中找到的所有示例都仅显示具有返回类型的示例 我认为这在函数式风格中更常见 但在这种情况下我无法避免 这是我到目
  • 为什么我只得到第一个捕获组?

    https stackoverflow com a 2304626 6607497 https stackoverflow com a 2304626 6607497 and https stackoverflow com a 370042
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional

随机推荐

  • 将 timedelta 对象转换为时间对象

    当从我的数据库中获取包含时间 ex 15 15 15 h m s 的行时 我在 timedelta 对象中获取它们 我希望它们在 time 对象中 以便稍后我可以将它们与日期对象组合并获取日期时间对象 for row in results
  • 无法通过XAMPP和phpMyAdmin访问MySQL

    我正在使用 XAMPP 并且尝试通过访问 phpMyAdminhttp localhost phpmyadmin 但我收到此错误消息 Error SQL query SHOW PLUGINS MySQL said 1 Can t creat
  • android 中的 kitkat 版本中的 Sharedpreferences 问题

    您好 在我的应用程序中 我接受用户的密码并将其存储在共享首选项中 而且 我提供了密码开 关功能 如果用户选中 应用程序将要求用户在每次启动时输入密码 并在选中 关闭 按钮时关闭 在 android 的 ICS Jellybean 版本及以下
  • 具有多个项目的开发机器上的 Redis 数据库

    当其中一些项目使用 Redis 数据库时 您如何管理开发和 或测试机器上的多个项目 有两个主要问题 Redis 没有命名数据库 只有数字 0 16 测试可能会在每次运行时执行 FLUSHDB 现在 我认为我们有三个选择 为每个项目 每个开发
  • 如何在Android的不同应用程序中使用广播接收器?

    我在 Eclipse 的两个不同项目中有两个应用程序 一个应用程序 A 定义首先启动的活动 A1 然后我从这个活动开始第二个项目 B 中的第二个活动 B1 这很好用 我通过以下方式启动它 Intent intent new Intent p
  • 使用 Android Nougat 打开图库中的图像

    我想在 Android Nougat 上打开图库中保存的图像 但我得到的是一个黑色的图库页面 并显示消息 无法加载照片 这是我的代码 Manifest
  • 未捕获的引用错误:纬度未定义[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 变量作用域 https stackoverflow com questions 500431 javascript variable scope 我的脚本有问题 我想从 pos
  • 优雅地退出node.js

    我正在阅读这本优秀的在线书籍http nodebeginner org http nodebeginner org 并尝试简单的代码 var http require http function onRequest request resp
  • 如何从Python调用scala?

    我想在 Scala 中构建我的项目 然后在 Python 脚本中使用它来进行数据黑客攻击 作为模块或类似的东西 我已经看到有多种方法可以使用 Jython 将 python 代码集成到 JVM 语言中 尽管只有 Python 2 项目 但我
  • 想要使用 ActionSherlockBar 添加选项卡

    我想用 ActionSherlockBar 添加选项卡所以我使用了一些代码 资源 https stackoverflow com questions 13640512 android actionbar sherlock with tabs
  • Graphviz 未在 jupyter 笔记本 python = 3.6 中运行?

    我正在尝试运行 graphviz 以查看 jupyter 笔记本上的点文件 其中已导入 dot exe 路径的路径 G anaconda3 envs tensorflowgpu Library bin graphviz G anaconda
  • 将数据帧随机分成 n 个相等的部分

    假设我有一个不同行数的数据帧列表 AB df data frame replicate 2 sample 0 130 201 rep TRUE BC df data frame replicate 2 sample 0 130 200 re
  • ASP.NET 路由是否可用于为 .ashx (IHttpHander) 处理程序创建“干净”的 URL?

    我有一些使用普通旧式的 REST 服务IHttpHandlers 我想生成更清晰的 URL 这样路径中就没有 ashx 有没有办法使用 ASP NET 路由来创建映射到 ashx 处理程序的路由 我以前见过这些类型的路线 Route to
  • 如何在sql中选择连续日期

    是否有任何函数可以检查连续日期 我在处理以下问题时遇到问题 我的桌子上有一个datetime包含以下数据的列 2015 03 11 2015 03 12 2015 03 13 2015 03 16 指定开始日期为2015 3 11和结束日期
  • FireBase API 是否有未缩小的 JavaScript 版本?

    我正在为通过 FireBase 提供 API 的设备开发一个界面 但我没有使用 Java JavaScript 或 FireBase 提供的库的任何其他语言 我正在使用 Lua 虽然我可以轻松实现 REST API 但我希望能够使用 Fir
  • Google APIs Explorer 未从我的应用程序引擎应用程序中找到可用的 ApiMethod

    我有一个可以正常编译的 App Engine 应用程序 我使用本地主机上的 Google Apis Explorer 测试方法调用 https developers google com apis explorer base http lo
  • 临时表在同一连接池上的多个请求中是否唯一?

    我有以下存储过程 它使用临时表批量导入数据 我知道临时表对于每个会话都是唯一的 但是我想知道我的应用程序是否使用线程并向存储过程发出多个并发请求 使用应用程序池中的相同 sql 连接 它们最终会引用相同的临时表吗 CREATE PROCED
  • Rhino - 将 javascript 对象传递给 java

    我对 Rhino 很陌生 我的问题是如何实现以下目标 假设我有一个 javascript 对象 它遵循如下所示的内容 我可以在 java 中使用它 var myObject new Object myObject string1 Hello
  • 没有jquery的自定义滚动条

    我正在寻找一个无需 jquery 即可工作的自定义滚动条 我不能使用 jquery 因为其他东西也是无 jquery 的 并且它针对快速加载进行了优化 将不胜感激与我分享的任何想法 NONNNNN 如果您不想使用 jQuery 您可以随时尝
  • 正则表达式正在抓取前面的字符

    所以我在正则表达式中遇到了一些不一致的行为 我的正则表达式 lt test 输入字符串 test exe c echo teststring gt test teststring 当我运行这个时https Regex101 com http