正则表达式查找引号之间的值

2023-12-31

我有一个正则表达式来查找引号之间的值:

([\"'])(?:\\\1|.)*?\1

这工作得很好,但是,如果引号之间有双引号,那么它会失败并也会将它们分开。例如。

"value1","value2","value with "" is here","value4"

我需要像这样的输出

value1
value2
value with "" is here
value4

这意味着,如果双引号出现在某处,它应该在输出中返回该双引号。 有人能帮忙吗?


我的第一个想法是通过将双引号添加到您的交替中来允许双引号:

([\"'])(?:\\\1|\1\1|.)*?\1

然而,由于您已经使量词变得懒惰,所以这仍然不太有效。最好明确指出引号之间不允许使用未转义的引号:

([\"'])(?:\\\1|\1\1|(?!\1).)*\1

看到它regex101 http://regex101.com/r/yE6cQ0.

解释:

([\"'])   # Match a quote, remember which kind in group 1.
(?:       # Start non-capturing group:
 \\\1     # Either match a backslash-escaped quote
|         # or
 \1\1     # a doubled quote
|         # or
 (?!\1)   # (as long as it's not a quote)
 .        # any character.
)*        # Repeat as necessary
\1        # Match a corresponding quote
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式查找引号之间的值 的相关文章

  • 清理丑陋的所见即所得 HTML 代码? Python 或 *nix 实用程序

    我终于升级了 重写 我的第一个 Django 应用程序 但我正在迁移所有内容 我愚蠢地给了用户一个完整的WYSIWYG对于某些任务来说 生成的 HTML 代码当然非常丑陋 额外的标签比内容更多 有谁知道我可以用来清理代码的库或外部外壳应用程
  • 通过匹配模式将字符串替换为另一个文本文件中的行

    我有一个带有对应键 gt 值的文件 sort keyFile txt head ENSMUSG00000000001 ENSMUSG00000000001 Gnai3 ENSMUSG00000000003 ENSMUSG0000000000
  • 使用高级正则表达式在java中分割字符串

    我正在尝试在java中使用String split 将整个文档拆分为子字符串 制表符空格和换行符 但我想排除引号之间存在单词的情况 Example 这个文件 CATEGORYTYPE1 CATEGORYSUBTYPE1 OPTION1 AB
  • Javascript 正则表达式 Lookbehind 替代方案

    我想用非空格来捕捉单词 var paragraphy Apple banana ki iler ki rnek foo var word ki iler var regex new RegExp s gt word lt s gi cons
  • 将 DataTable 的单列转换为 CSV

    使用 VB NET 将 DataTable 的单列转换为 CSV 的最简洁方法是什么 这些值是整数 所以我不需要担心字符转义或编码 转换为 CSV 是什么意思 如果你想生成一个以逗号分隔值的字符串 你可以使用 this tbl是你的数据表和
  • 在 R 中分割并提取字符串的一部分(在“.”和数字之间)

    我有一个字符变量 companies 观察结果如下 612 Grt Am Mgt Inv 7 33 77 威克斯4 61 265 王实验室8 75 9 CrossLand 节省 6 32 228 JPS纺织集团2 00 我试图将这些字符串分
  • 将存储在变量中的正则表达式与量词组合的正确语法是什么?

    我知道堆栈溢出中已经有很多关于在正则表达式中使用变量的问题 并且如果变量是一个单词 或者只需要匹配一次 我设法使其工作 但是 一旦我添加特殊字符 空格和量词 我就无法让它匹配 例如 我想匹配中的任何内容some var任何包含它的 3 个连
  • 正则表达式 在 Coldfusion 中匹配整个单词字符串

    我正在尝试这个例子 第一个例子 keyword star myString The dog sniffed at the star fish and growled regEx b keyword b if reFindNoCase reg
  • 带文本板的多行正则表达式

    我不知道如何使文本板执行扩展多行的正则表达式 我尝试使用 perl 语法与 myregex m 和 m 作为修饰符 但这不起作用 我在编辑器中看不到复选框或任何内容来告诉它执行多行操作 有人有主意吗 这是完全可能的 而且简单 你只需使用 n
  • VB.NET 或 C# 中父类的子类与基类的派生类有什么区别?

    问完问题后调用需要在 VB NET 或 C 中键入为基类的派生类实例的方法 https stackoverflow com questions 13024688在 Stack Overflow 上 我被告知我在提问时使用了错误的术语 我使用
  • 在Python中检测包含非英文字符的字符串

    我有一些混合有英文字母和非英文字母的字符串 例如 w 1991 2 如何使用正则表达式或 Python 中的任何其他快速方法识别这些类型的字符串 我不喜欢将字符串中的字母与字母列表进行逐一比较 而是一次性快速完成此操作 您可以检查该字符串是
  • 使用正则表达式检查字符串是否以数字字符开头和结尾

    我想 String string 123456 if string startsWith 0 9 string endsWith 0 9 code And the if子句永远不会被调用 不要使用正则表达式 Character isDigi
  • 检测 UTF-8 编码文本文件中的损坏字符

    我有一个使用错误的字符编码编辑的文本文件 因此当我使用 UTF 8 打开它时 某些字符串中有一些 mojibake 和损坏的字符 哪种脚本语言能够最有效地检测这些损坏的字符 Perl 不是一个选择 我基本上试图找到一种使用脚本扫描文本文件并
  • 仅匹配单词或字符串中的撇号

    我正在寻找一个可以匹配的Python正则表达式 didn t 并仅返回紧接在撇号前面的字符 例如 t 但不是 d or t 在开始和结束时 我努力了 w w 但它只匹配开头的撇号 更多示例 I m 应该只匹配 m并不是 I Erick s
  • PHP正则表达式在wordpress短代码标签之间替换

    我有一个短代码 我希望能够根据帖子的上下文将其删除 例如 tooltip slug test Test Text tooltip 我希望输出是 span class dummy Test Text span 我已经用 preg replac
  • Mac 上使用 Excel VBA 进行正则表达式

    我需要将 regEx 与 Excel VBA 一起使用 我使用的是 Mac OS 10 10 和 Office 2011 因此没有可以使用的 DLL 文件 这里有什么可做的 我读到我必须绑定一个苹果脚本 这是如何完成的以及该脚本需要什么内容
  • 如何验证电子邮件地址与网站域名是否匹配?

    我的表单上有 2 个输入字段 电子邮件和网站 如何使用 JQuery 验证电子邮件地址域必须与网站域匹配 例如 如果网站是http example com http example com或带 www 或不带 http 或不带http ww
  • 将参数传递给 .NET 定义的命令

    我需要在 Autocad 2000i 的命令行上编写一个命令 并且希望 autocad 提示输入参数 然后我的 vb net 程序将根据收到的参数进行操作 基本上我想我的解决方案都在这里 http through the interface
  • Pandas 字符串提取所有匹配项

    我正在学习 pandas 系列字符串方法中的正则表达式操作 我能够从字符串中提取第一个数字 但我的正则表达式与第二个数字不匹配 如何捕获这两个数字 注意第二行 第二个元素在这里是 NAN CODE import pandas as pd d
  • 删除 .htaccess 中 URL 中各处的多组斜杠

    我目前有一个网站 访客可以访问每个网址 并使用任意数量的斜杠来分隔文件夹名称 例如 如果 URL 应该是 http example com one two three four 然后用户可以通过以下任意方式访问同一页面 http examp

随机推荐

  • 如何覆盖 Firefox 插件中内置的 XPCOM 组件?

    我第一次涉足 Firefox 扩展开发 到目前为止进展顺利 但我遇到了一个问题 我需要做的一件事是覆盖内置的 nsIPromptService 并用我自己的东西替换它 我在这里完成了基本的 XPCOM 组件创建教程 并让 hello wor
  • 捏合缩放和平移

    我有一个以 LinearLayout 作为主要布局的活动 在该布局中 有一个按钮可将视图 R layout motor block 添加到主布局 R id layout LayoutInflater inflater LayoutInfla
  • 重写句子,同时保留语义

    是否可以使用WordNet http wordnet princeton edu 重写一个句子 使句子的语义仍然相同 或大部分相同 假设我有这样一句话 Obama met with Putin last week 是否可以使用 WordNe
  • malloc()/free() 的对齐限制

    较旧的 K R 第二版 和我读过的其他 C 语言文本讨论了动态内存分配器的实现 其风格为malloc and free 通常还会顺便提及一些有关数据类型对齐限制的内容 显然 某些计算机硬件架构 CPU 寄存器和内存访问 限制了存储和寻址某些
  • 如何通过 Chrome 内容脚本下载文件?

    This 所以答案 https stackoverflow com a 24162238 1830334详细介绍了如何通过 Chrome 扩展程序下载文件 但我使用的是内容脚本 对 Chrome API 的访问受到限制 https deve
  • 使用 C# 删除项目时自动计算列表视图中项目的总价值

    我使用列表视图作为购物车 我需要知道当我删除商品时如何重新计算购物车的总价值 这是我添加到列表视图的代码 private void btnACart Click object sender EventArgs e int value 0 f
  • 从日期时间转换为 INT

    在我的 SSIS 包中 我必须将值从 DateTime 转换为相应的 INTEGER 值 已提供以下示例 关于如何转换这些有什么想法吗 DATETIME INT 1 1 2009 39814 2 1 2009 39845 3 1 2009
  • Visual Studio Community 2015 中的空白应用程序 (XAML) 等效项

    我正在阅读 Head First C 第 3 版 文本 其中包含特定于 VS 2012 的说明 但在 VS Community 2015 中找不到等效内容 文本显示使用 Windows Store gt Blank App XAML 开始一
  • 如何使用 Cython 将 python 函数作为参数传递给 c++ 函数

    这是我的设置 我有下一个要包装的 C 类 Foo h class Foo public typedef int MyType typedef int ArgType1 typedef int ArgType2 typedef MyType
  • Symfony2 Doctrine2 与两个拥有方和 Doctrine 命令行工具的多对多关系

    在我的 Symdony2 项目中 我有两个相关实体 Service 和 ServiceGroup 这应该是多对多关系 因为每个组可以有多个服务 每个服务可以属于多个组 此外 我需要一个用户界面来管理服务和组 因此 在编辑服务时 用户应该能够
  • 无法上传应用程序 - “上传到 itunes 商店时发生错误”

    我正在尝试将我的应用程序上传到商店 这不是第一次 所以我对这个过程很熟悉 我已尝试通过管理器 首选方法 和应用程序加载器进行尝试 但两者都提供了模糊的错误消息 我最近更新到 Xcode 4 试图修复它 我的存档项目验证一切正常 但在点击提交
  • for 循环没有按预期工作

    程序将询问用户该物品的代码 然后程序会将物品的状态更改为不可用 代码工作正常 它改变了状态 但 else 内的代码仍在运行 并且找不到打印项目 这是代码 public void stopSellingItem boolean invalid
  • XML 模式;有效属性值列表中的多个

    我对使用 XML 模式相当陌生 所以如果这比我自己认为的更微不足道 请原谅我的无能 我正在尝试创建一个必需属性 该属性必须包含列表中的 1 个或多个以空格分隔的字符串值 列表为4种典型的HTTP请求方式 get post put and d
  • 输入迭代器跳过空格,任何方法可以防止这种跳过

    我正在从文件读入字符串 直到到达分隔字符 美元符号 但输入迭代器会跳过空格 因此创建的字符串没有空格 在这种情况下不是我想要的 有什么办法可以阻止跳过行为吗 如果是这样怎么办 这是我的测试代码 include
  • 如何在 Nuxt 路由器中手动生成带有 .htaccess 404 页面回退的页面

    我正在尝试使用 Nuxt js 创建一个 SSG 网站 当我访问 nuxt config js 的生成属性中未设置的路由时 我想在不更改URL的情况下显示404页面的内容 使用htaccess 以下是正在建设中的现场 http we are
  • JasperReports 中的交叉表排序

    我在交叉表中有一个列组 它是一个字符串 它使用字段SectionName 还有一个领域 SectionID 整数 我想要排序的依据 I put F SectionID in the Sort By Expression但我收到错误 1 未找
  • Python 中的逆字典

    我正在尝试使用现有字典的值列表作为单独的键来创建一个新的字典 例如 dict1 dict a 1 2 3 b 1 2 3 4 c 1 2 我想获得 dict2 dict 1 a b c 2 a b c 3 a b 4 b 到目前为止 我还无
  • 如何生成符号信息以与 Linux 版本的英特尔 VTune Amplifier 一起使用?

    我正在使用英特尔 VTune Amplifier XE 2011 来分析我的程序的性能 我希望能够在分析结果中查看源代码 文档说我需要提供符号信息 不幸的是 它没有说明在编译我的程序时如何生成该符号信息 在 VTune 的 Windows
  • 如何访问 Android 中帐户验证器中设置的首选项

    我需要获取 CheckBoxPreference 和 SwitchPreference 的值 在 account preferences xml 我有
  • 正则表达式查找引号之间的值

    我有一个正则表达式来查找引号之间的值 1 1 这工作得很好 但是 如果引号之间有双引号 那么它会失败并也会将它们分开 例如 value1 value2 value with is here value4 我需要像这样的输出 value1 v