Perl 拆分和正则表达式

2024-05-30

我有以下字符串:

'100% California Grown Olives, Water, Salt And Ferrous Gluconate (An,Iron, Derivative),asasd, sadasda'

我想把它分开/,/ but only if例如,它不在括号内,在这种情况下结果应该是:

100% California Grown Olives
Water
Salt And Ferrous Gluconate (An,Iron, Derivative)
asasd
sadasda

thanks,


@result = split(m/,(?![^()]*\))/, $subject);

仅当下一个括号(如果有)不是右括号时,才会以逗号分隔。正如 Jack Maney 正确指出的那样,如果可能出现嵌套括号,这可能会导致失败。

解释:

,       # Match a comma.
(?!     # Assert that it's impossible to match...
 [^()]* # any number of non-parenthesis characters
 \)     # followed by a closing parenthesis
)       # End of lookahead assertion
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Perl 拆分和正则表达式 的相关文章

  • 删除重复字符

    我如何删除重复字符 例如删除字母k in cakkkke让它成为cake 执行此操作的一种简单方法是循环遍历字符串的每个字符 如果该字符不是前一个字符的重复 则将字符串的每个字符附加到新字符串 下面是一些可以执行此操作的代码 newStri
  • JavaScript 解析 bbcode url

    我已经尝试解析 JavaScript 中的 bbcode URL 标签有一段时间了 例如 url http examp le linktext url 应该成为 a href http examp le linktext a 我对此做了很多
  • 如何去掉所有标签并得到纯文本?

    我必须将用户输入文本存储在我的数据库中HTML and CSS格式 案例是 Rad编辑器 http www telerik com products aspnet ajax editor aspx 用户将文本从 MSWord 复制到此编辑器
  • 在 SQL 中查询行序列

    假设我正在存储events有关联users如下表 其中dt代表事件的时间戳 dt user event 1 1 A 2 1 D 3 1 B 4 1 C 5 1 B 6 2 B 7 2 B 8 2 A 9 2 A 10 2 C 这样我们就可以
  • 从子字符串中提取的映射运算符

    I have list of dicts print L 0 x 1 1 y 2 2 z 1 0 x 1 1 y lt 3 2 z gt 1 我想创建元组 其值位于运算符之前 运算符之后 值之后 first step wanted x 1
  • 使用正则表达式验证输入字符串是否为 0-255 之间的数字

    我在将输入字符串与正则表达式匹配时遇到问题 我想验证输入数字在 0 255 之间并且长度最多应为 3 个字符 代码工作正常 但当我输入 000000 至任意长度时 显示 true 而不是 false 这是我的代码 String IP 000
  • Perl:导出器出现问题

    Module FOO BAR Foobar pm use strict use warnings package Foobar our VERSION ISA EXPORT EXPORT OK EXPORT TAGS FOO BEGIN r
  • 如何在 Perl 中将数组数据插入 MySQL?

    我用下面的脚本解析一个文本文件 如何将数组数据插入到MySQL表中 我已经学习了 Perl MySQL DBI 连接方法 我可以成功连接到本地 MySQL 数据库 我可以使用 MySQL 命令行创建表 C Perl bin perl exe
  • 转换MAC地址格式

    我刚刚编写了一个小脚本 从交换机中提取数百个 MAC 地址进行比较 但它们的格式为 0025 9073 3014 而不是标准的 00 25 90 73 30 14 我对如何转换它感到困惑 我能想到的最好的办法就是在 处将它们分解成碎片 然后
  • 如何仅使用 grep/sed 提取子字符串和数字

    我有一个包含文本和数字的文本文件 我想使用 grep 只提取我需要的数字 例如 给定一个文件如下 miss rate 0 21 ipc 222 stalls n shdmem 112 所以说我只想提取数据miss rate这是0 21 如何
  • exsl:xsl:if 块中的文档

    这是我的用例的简化版本 1 我有一个转换xsl文件 如下
  • jQuery:如何用反斜杠转义单引号和双引号

    我想在一行而不是两行中使用反斜杠转义单引号和双引号 单引号示例 str str replace g 有没有办法同时对包含的双引号执行此操作 嗅探器在下面很好地回答了这个问题 我最终转义了我们需要的所有字符 如下所示 str str repl
  • Haskell 中的模式匹配正则表达式模式

    在 Scala 中 我有一个正则表达式模式匹配 如下所示 val Regex d 4 d 2 d 2 r val Regex year month day 2013 01 06 结果是 year String 2013 month Stri
  • 如何在 javascript 中用正则表达式替换特殊字符?

    我需要替换字符串中的特殊字符 如下所示 this value this value replace n g 除了正则表达式部分之外 我需要它来查找opposite所有这些 0 9 查找 0 到 9 中的任意数字 A Z 查找从大写 A 到大
  • 是否有一个应用程序可以通过选择所需区域来从文本中创建正则表达式?

    我希望这是与程序员相关的问题 我的爱好是 C 编程 出于我自己的目的 我需要解析 html 文件 最好的想法是 正则表达式 正如许多人发现的那样 学习它们非常耗时 因此如果您知道一些能够使用它们的应用程序 我很感兴趣input 任何代码的一
  • 可以使用带有
     的 CodeIgniter 输出压缩来显示代码块吗?				
    			

    是否可以排除 pre 来自此代码点火器压缩挂钩的标签 我不太了解正则表达式 因此不会破坏我的页面 我试过了 但它总是会提高输出 EDIT 此 CodeIgniter 压缩挂钩会去除代码中所有未指定的空格和格式 以压缩输出 包括 pre 依赖
  • gitk中正则表达式的格式是什么?

    我正在尝试使用 gitk 中的 find 添加 删除字符串 正则表达式选项 我尝试过的语法不起作用 并且我找不到描述它接受的正则表达式语法的文档 我正在尝试匹配两者Modem Wakup and Modem UnWakeup 两者都不Mod
  • 正则表达式替换多个组

    我想使用正则表达式将多个组替换为相应的替换字符串 更换表 gt amp gt hsh 1 gt 5 5 gt 6 例如 对于以下输入字符串 a1asda fj ahdk5adfls 对应的输出字符串是 a5asda ampfj hshahd
  • 如何避免正则表达式中除空格之外的所有特殊字符?

    我正在使用行过滤器构建自动完成编辑器 并且正在使用正则表达式删除特殊字符 但空格也被删除 Regex Regex Replace currentText 0 9A Za z 我只想忽略空格但替换剩余的特殊字符 只需在否定字符类中添加空格即可
  • 如何在 Perl CGI 程序中进行分页和排序?

    这是我从 SQLite 数据库检索数据的表 它有很多记录 所以在 添加 按钮附近我需要类似的东西 lt lt gt gt 每当我点击时 它就会执行分页功能 另外 除了表每个标头 例如 UserName UserId 之外 我还需要排序 按钮

随机推荐