如何修复我的正则表达式,使其不与贪婪量词匹配太多? [复制]

2023-12-10

我有以下几行:

"14:48 say;0ed673079715c343281355c2a1fde843;2;laka;hello ;)"

我使用一个简单的正则表达式来解析它:

if($line =~ /(\d+:\d+)\ssay;(.*);(.*);(.*);(.*)/) {
    my($ts, $hash, $pid, $handle, $quote) = ($1, $2, $3, $4, $5);
}

但是;最后把事情搞砸了,我不知道为什么。贪心运算符不应该处理“一切”吗?


贪婪运算符试图获取尽可能多的东西,并且仍然与字符串匹配。发生的情况是第一个(在“say”之后)获取“0ed673079715c343281355c2a1fde843;2”,第二个获取“laka”,第三个找到“hello”,第四个匹配括号。

你需要做的是让除了最后一个之外的所有都变得非贪婪,这样它们就会尽可能少地抓取并仍然匹配字符串:

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

如何修复我的正则表达式,使其不与贪婪量词匹配太多? [复制] 的相关文章

  • Java 库有 parseInt、parseLong、parseDouble 等接受默认值并且不抛出异常吗?

    我喜欢中的建议java中的String到Int 可能是坏数据 需要避免异常 https stackoverflow com questions 174502 string to int in java likely bad data nee
  • Grep 和 Python

    我需要一种通过 Unix 命令行中的正则表达式使用 grep 搜索文件的方法 例如 当我在命令行中输入 python pythonfile py RE file to be searched 我需要正则表达式 RE 在文件中搜索并打印出匹配
  • 无法从日志文件中提取特定信息

    我这里有日志文件我想提取以下信息 想要提取十六进制值 如果该行有第二个括号 0 9 想要提取十进制值 首先转换为十六进制 然后提取 9 gt 0x09 想要提取负值 25 先转换为十六进制然后提取 例如 25 gt FFE7 gt 想要提取
  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • 正则表达式查找字符串中的整数和小数

    我有一个像这样的字符串 str1 12 ounces str2 1 5 ounces chopped 我想从字符串中获取金额 无论它是否是小数 12 或 1 5 然后获取紧邻的前一个测量值 盎司 我能够使用一个非常基本的正则表达式来获取测量
  • 使用多个可选模式时顺序的重要性

    可选模式的顺序如何DateTimeFormatter影响解析操作吗 我正在运行这个程序 想知道为什么最后一行抛出异常而不是前三行 public static void main String args String p1 EEEE E dd
  • 删除字符串末尾的句点和数字

    如何删除尾随句点 后面紧跟一个数字 长度为一位或两位数字 例子 z lt c awe p 56 red 45 ted 5 you 88 tom 我只想删除 45和 5 你只需要一个简单的正则表达式 z new gsub 0 9 z 一些评论
  • Python 非贪婪正则表达式

    我如何制作一个像这样的Python正则表达式 这样 给定 a b c d e 蟒蛇匹配 b 代替 b c d 我知道我可以使用 代替 但我正在寻找一种更通用的解决方案 使我的正则表达式更加干净 有没有办法告诉python 嘿 尽快匹配这个
  • iOS 中的 CSV 逐行解析

    我正在 Objective c 中解析 CSV 文件 该文件包含如下内容 line 40 Rising searches line 41 nabi avc Breakout line 42 stonewall 700 line 43 med
  • 检查一个数字是 int 还是 float

    在perl中 我想检查给定变量是否包含浮点数 为了检查我正在使用的 my Var 0 02 Floating point number if int Var Var floating point number 但上面的代码对于 0 0 不起
  • Rust 编程竞赛中最快的惯用 I/O 例程?

    我的问题已部分得到解答 因此我根据从评论和其他实验中学到的知识对其进行了修改 总之 我想要一个用于编程竞赛的快速 I O 例程 其中使用单个文件解决问题 无需外部包 它应该从一个以空格分隔的标记序列中读取BufRead 标准输入或文件 标记
  • Perl 正则表达式图灵完备吗?

    我见过 Ruby 和 Perl 程序员做了一些事情复杂的代码挑战 https codegolf stackexchange com questions 3596 regex validating regex完全用正则表达式 这前瞻和后瞻 h
  • 创建正则表达式匹配数组

    在Java中 我试图将所有正则表达式匹配返回到一个数组 但似乎您只能检查模式是否匹配某些内容 布尔值 如何使用正则表达式匹配来形成与给定字符串中的正则表达式匹配的所有字符串的数组 4城堡的回答 https stackoverflow com
  • 如何在 Perl 中复制整个目录?

    我需要将整个目录复制到某个位置 最好的方法是什么 File Copy正如我所见 仅逐个文件复制 顺便说一句 我在Windows下工作 感谢帮助 也许调查一下文件 复制 递归 http metacpan org pod File Copy R
  • 使用 Cygwin 安装 CPAN GD 模块失败

    我已经尝试解决为什么 CPAN GD 模块无法使用 Cygwin 安装 2 天了 任何帮助深表感谢 谢谢 cpan install GD Going to read home xxxxxxxxxx cpan Metadata Databas
  • 如何在 CakePHP 中“验证”人名?

    我有一个 PHP 脚本 应该检查 有效 的人名 但最近破解了带有空格的名称 因此我们向验证器添加了空格 除了这样做之外 有没有办法向 CakePHP 的验证器添加黑名单以阻止所有 无效 字符 而不是允许 有效 字符 注意 我 通常 知道如何
  • Javascript:删除字符串标点符号并拆分成单词?

    抱歉 如果之前有人问过这个问题 但我正在尝试从这样的字符串中获取单词数组 Exclamation Question Quotes Apostrophe Wasn t Couldn t Didn t 该数组应该看起来像这样 exclamati
  • Python 中的 grep 等价物是什么?

    假设我有一个文本文件 其中包含 我喜欢大象 这一行 如果我捕获所述文件并将其通过管道发送到 grep大象 我会得到整行 我喜欢大象 如何使用 re 在 Python 中实现此功能 我一直在尝试以下方法 test re search elep
  • 从字体到跨度(大小和颜色)和背面的正则表达式(VB.NET)

    我正在寻找一个正则表达式 可以将我的字体标签 仅具有大小和颜色属性 转换为具有相关内联CSS的span标签 如果有帮助的话 这将在 VB NET 中完成 我还需要一个正则表达式来实现相反的效果 下面详细说明的是我正在寻找的转换示例 font
  • 根据特定字符获取整个字符串或子字符串

    我有一个包含 MIME 类型的字符串 例如application json 现在我想将其与实际的 HTTP 标头进行比较 在本例中content type 如果标头包含 MIME 类型 那么就很简单 if mimeType contentT

随机推荐

  • PHP GD 锐度滤镜

    如何使用锐度滤镜制作锐度滤镜PHP GD图书馆 所以说这 转到这 如果不可能PHP 比其他语言有能力吗 我认为他想使用PHP的GD库 这很简单 函数 imageconvolution 只需在页面上搜索 锐化 您就会看到可用于锐化的矩阵 它工
  • 防止 ASP.NET 视图状态通过 GET 形式在查询字符串中传输

    我相信我已经禁用了所有控件以及页面本身的视图状态 但查询字符串仍然包含 viewstate 和 eventvalidation 参数 关于检查和 或更改内容有什么想法吗 关于视图状态 是否有一些我可能不知道的事情 很可能 导致视图状态以 G
  • Java RESTful Jersey 示例? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 是否有任何示例演示使用 J
  • C++ << 运算符重载,没有友元函数

    正如主题所说 有可能这样做吗 我能够通过重载 运算符来实现此目的 但是 我无法使用 这是适用于我的友元函数的代码示例 class Punkt2D int x y public Punkt2D int wartoscX int wartosc
  • 将 Excel 导出到 System.DataTable 时出现未知问题

    我正在尝试将数据从 Excel 文件获取到 DataTable 这是我的代码片段 FilePath WebConfig SavePath Book2 xls Create the connection object OleDbConnect
  • Angular.js 至少需要一个复选框[重复]

    这个问题在这里已经有答案了 如果这是重复的 我不会感到惊讶 但是我找不到任何符合我需要的简单内容 我所需要的只是要求用户至少选择一个复选框 但我对如何实现这一目标感到困惑
  • 如何使用 hibernate criteria api 执行 union 子句查询

    SELECT supplier id FROM suppliers UNION ALL SELECT supplier id FROM orders 我只是在查询的 UNION ALL 子句上方和查询的 UNION ALL 子句下方创建两个
  • 无法在设备 HTC6435LVW Droid DNA Deluxe 上检索 Build.MANUFACTURER

    这看起来是一个非常基本的问题 我无法检索一些基本信息 例如Build MANUFACTURER Build MODEL and Build VERSION RELEASE 我的代码可以在 50 多种设备上运行 但在以下情况下失败HTCC64
  • 与在电子邮件签名中实施图像相关的一些问题?

    我需要用图像实现电子邮件签名 到目前为止 我们只支持已经可以使用的电子邮件签名中的文本 我需要提供该功能 我可以在邮件签名中插入图像 我可以将电子邮件发送给我的应用程序中的用户 也可以发送给外部邮件域 如 gmail yahoo 等 上的用
  • 获取 JAX-RS 资源中的 ServletContext

    我正在玩 JAX RS 部署在 Tomcat 上 基本上是 Path hello Produces text plain public class Hellohandler GET public String hello return He
  • FILTER_SANITIZE_STRING 有何作用?

    有大约一百万个问答来解释这些选项 例如FILTER FLAG STRIP LOW 但是什么是FILTER SANITIZE STRING自己做 没有任何选择 它只是过滤标签吗 根据PHP手册 剥离标签 可选择剥离或编码特殊字符 根据W3学校
  • Android - 导航抽屉片段

    我已经在我的 Android 应用程序中实现了导航抽屉 但现在我希望能够在用户单击导航栏中的任何列表项时使用片段更改布局 这是我到目前为止所得到的 XML
  • 在 Windows 上可以使用什么来代替 Unix 管道进行进程间通信?

    我有一个启动子进程的应用程序 子进程从标准输入读取要操作的文件 对于某些操作 它需要一个输入文件 其中包含有关如何处理其操作的文件的信息 我们将其称为 控制文件 控制文件的名称也是从 stdin 读取的 父应用程序可以使用临时文件作为控制文
  • 如何在express和bodyParser中接受application/csp-report作为json?

    我正在尝试编写一个中间件来接受来自浏览器的 CSP 报告 浏览器问题application csp report as Content Type 发布的请求是 JSON 格式 目前我使用bodyParser text接受该内容类型 但我想也
  • 记录与数据库通信的 SQL

    我正在为我的 Web 应用程序开发 SQL 记录器 我希望能够记录由用户与 GUI 交互触发的 SQL 查询 我在Spring环境中工作 使用maven和mybatis 我将我的 webapp 打包成一个 war 并将其部署到 tomcat
  • 从 OpenOffice 运行 SWT 应用程序时发生致命错误

    我有一个开发办公室Java 插件应用程序 我正在打电话SWT从一个XActionListener SWT 的加载是使用特殊的类加载器动态完成的 SWT 窗口显示良好 但当我点击 SWT 窗口的关闭按钮时 出现错误 我附上了此错误生成的错误文
  • 如何测试使用 exec_() 调用的自定义对话框窗口?

    我正在尝试为我的项目编写系统测试 我有一个启动各种窗口的控制器类 但是 我似乎无法使用 exec 和 qtbot 来控制 Windows 启动 这是一个 MVCE from PyQt5 QtWidgets import from PyQt5
  • Angular 1.5 组件 $onDestroy 和 $scope.$destroy() 之间的区别

    我想了解控制器之间的区别 onDestroy方法和 scope destroy 定义表明 当需要销毁组件的包含范围时 将调用 onDestroy 但 scope destroy 的情况不是一样吗 根据我创建的 plunkerhttps pl
  • PyQT 中的弹出式、非模态、内联对话框

    很难描述我想在这里做什么 所以这就是我想要的 单击 弹出 对话框的按钮 但是 该对话框应该是非模式的 我还希望它能与父应用程序 锁定 这样如果我移动它 它也会随之而来 看起来我或多或少试图描述一个内联弹出窗口 但我不确定这是否就是它的名字
  • 如何修复我的正则表达式,使其不与贪婪量词匹配太多? [复制]

    这个问题在这里已经有答案了 我有以下几行 14 48 say 0ed673079715c343281355c2a1fde843 2 laka hello 我使用一个简单的正则表达式来解析它 if line d d ssay my ts ha