在Perl中,如何根据绝对位置的条件来计算成功匹配的出现次数

2024-01-30

仅使用onePerl替换或匹配正则表达式语句,如何修改以下代码:

我需要修改的值$pattern在下面的代码中,代码将计算在字符串中找到成功匹配的次数,前提是成功匹配的绝对位置满足特定条件。

$pattern = "F1";  
$string = "F1234F12F1F1234F12F13";     
$count = 0;      
while ($string =~ /$pattern/g) {$count++} 
print $count;

作为绝对位置条件的示例,您可以想到:

绝对位置能被 5 整除

在这种情况下,基于的值$string如上所述,输出将是:4。

请注意,一旦代码完成,在不同条件下成功匹配的绝对位置发生变化的唯一行将是代码的第一行。

谢谢你的帮助


您可以使用 perl 特殊变量@LAST_MATCH_START https://metacpan.org/pod/perlvar#LAST_MATCH_START得到输出:

use strict;
use warnings;

my $pattern = "F1";  
my $string  = "F1234F12F1F1234F12F13";     
my $count;      
while ( $string =~ /$pattern/g ) {
    $count++ if $-[0] % 5 == 0;
} 
print $count;

Output:

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

在Perl中,如何根据绝对位置的条件来计算成功匹配的出现次数 的相关文章

  • 通过搜索查找下一个文本并突出显示不起作用

    当在搜索框中搜索任何文本时 它可以找到并突出显示正确的文本 但是当搜索下一个 新文本时 它无法找到下一个 新文本 再次搜索时它不起作用 我无法找到问题 这JS below JS button search click function va
  • PCRE 匹配 C 中的所有组

    我想使用 PCRE C 库递归地匹配一个组 e g pattern d subject 5 6 3 2 OVECCOUNT 30 pcrePtr pcre compile pattern 0 error erroffset NULL rc
  • htaccess 301 重定向 - 删除查询字符串 (QSA)

    我一直在努力处理一些 htaccess 重定向 我只是花了一些时间在堆栈上阅读和搜索 但无法获得适合我的场景的答案 我正在将旧客户端网站的 301 重定向到新客户端 旧页面有参数查询 我想从网址中删除它 menu php idCategor
  • 在 Perl 中,如何制作数组的深层复制? [复制]

    这个问题在这里已经有答案了 可能的重复 在 Perl 中制作数据结构深层复制的最佳方法是什么 https stackoverflow com questions 388187 whats the best way to make a dee
  • 除了使用正则表达式之外,在 Swift 中解析 HTML

    下面是我想在 Swift 中解析的 HTML 代码 td class pinyin a href rsc audio voice pinyin pz yi1 mp3 span class mpt1 y span a a href rsc a
  • 在 Perl 中查找数组的大小

    我似乎遇到过几种不同的方法来查找数组的大小 这三种方法有什么区别呢 my arr 2 print scalar arr First way to print array size print arr Second way to print
  • 如何仅计算数字长度正则表达式

    俄罗斯电话号码有11位数字 但我无法使用a 11 因为电话号码可以包含括号和破折号我的正则表达式 d 1 2 0 9 3 0 9 7 9 号码可以包含 1 到 2 个字符作为国家 地区代码然后 3 位带括号的数字或不作为电话运营商代码然后是
  • “foreach”循环中会发生什么样的本地化?

    来自 perldocperlsyn http perldoc perl org perlsyn html Foreach Loops关于 Foreach 循环的主题 如果变量之前是 用 my 声明 它使用 变量而不是全局变量 但它仍然局限于
  • 在 Perl 中实现 CLI 工具的最佳实践是什么?

    我正在使用 Perl 实现 CLI 工具 我们可以遵循哪些最佳实践 作为前言 我花了 3 年时间为一家大型金融公司设计并实现了一个相当复杂的 Perl 命令行工具集 以下想法基本上是我们团队设计指南的一部分 用户界面 命令行选项 允许尽可能
  • R grep:有 AND 运算符吗?

    假设我有以下数据框 User Id Tags 34234 imageUploaded people jpg more comma separated stuff 34234 imageUploaded 12345 people jpg 我如
  • 正则表达式替换,但仅限于两种模式之间

    好的 我有一个多行字符串 我正在尝试对其进行一些清理 每行可能是也可能不是一大段引用文本的一部分 例子 This line is not quoted This part of the line is not quoted but this
  • 从具有不同活动 perl 版本的另一个 perl 脚本调用 perl 函数

    我们有两个版本的 Active perl 5 6 和 5 24 我们有必须在 Active perl 5 24 版本 采用 TLS 1 2 版本 上执行的 Web 服务 并且需要从 Active perl 5 6 版本调用 我们使用的是wi
  • 除空字符串外的任何内容的正则表达式

    是否可以使用正则表达式来检测任何不是 空字符串 的内容 如下所示 string s1 string s2 string s3 string s4 etc 我知道我可以使用修剪等 但我想使用正则表达式 s 将匹配任何包含至少一个非空格字符的字
  • 从字符串中删除重音符号

    最近我在 StringUtils 库中发现了非常有用的方法 即 StringUtils stripAccents String s 我发现它对于删除任何特殊字符并将其转换为某些 ASCII 等效字符 确实很有帮助 例如 c 等 现在我正在为
  • Mercurial .hgignore 负向前瞻

    使用 Mercurial 我需要忽略除名为 keepers 的某个目录中的文件之外的所有文件 从表面上看 使用 Regex 和 Negative Lookahead 似乎很容易 然而 尽管我能够在 Regex Buddy 和其他工具中验证我
  • 从 HoA 值中获取独特元素并打印

    我有一个 HoA 其中包含某些值 我只需要 HoA 中的独特元素 预期结果 Key 1 Element ABC DEF Key 2 Element XYZ RST Key 3 Element LMN 下面是我的脚本 usr bin perl
  • 如何在正则表达式中仅允许 WhatsApp 格式的数字?

    所以我试图让这个正则表达式允许这个破折号符号 例如 此电话号码现在不匹配 212 659 123456 所以我需要有人help我更改正则表达式以允许它 please这是正则表达式 0 9 x20 6 14 0 9 因为我正在努力仅接受 Wh
  • 在评论中查找不同风格的日期

    我还有一个问题要问preg match 我有一个表 其中评论的日期写在评论本身内 手动 现在我需要提取该日期并将其放置在不同的列中 我发现评论和日期的样式如下 id warning sent warning date 6109 2011 0
  • 我们应该聘请用 Perl 编写 C 的人吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我的一位同事最近面试了一些求职者 其中一位说他们有非常好的 Perl 经验 由于我的同事不懂 Perl 他要求我对那位潜在雇员编写的 场外 一些代码进
  • 使用正则表达式处理大字符串的灾难性回溯问题

    我试图捕获两个字符串之间的所有内容 问题是我想要捕获的这个字符串可以长达 3000 行数字和逗号 因此 当发生这种情况时 我会遇到灾难性回溯错误 这是我正在使用的正则表达式以及下面的示例数据 NEM12 s S lt CSVInterval

随机推荐

  • qooxdoo 中的无限滚动与虚拟列表

    我创建了一个虚拟列表 当用户在列表顶部或底部滚动时 新数据将添加到虚拟列表的模型中 这似乎工作正常 我的问题是虚拟列表的项目具有不同的高度 因此我需要它们能够在出现在用户屏幕上之后或之前自行配置行高 为此 我在绑定委托中添加以下代码 ite
  • 如何设置散景网络图中的节点大小和颜色?

    如果我们以标准空手道俱乐部为例 如何根据节点的程度更改节点的颜色和大小 import networkx as nx from bokeh io import show output file from bokeh models import
  • 如何检测用户更改表?

    在电子表格中打开特定工作表时如何检测并触发自定义操作 我找不到正确的功能https developers google com apps script guides triggers events https developers goog
  • C# 中的代理基本身份验证:HTTP 407 错误

    我正在使用需要身份验证的代理 即 在浏览器中 如果我尝试打开页面 它会立即要求提供凭据 我在程序中提供了相同的凭据 但失败并出现 HTTP 407 错误 这是我的代码 HttpWebRequest request HttpWebReques
  • 如何隐式从本地分支“X”到“origin/Y”的“git push”

    假设你的起源上有一个分支 它的名字长得可笑 gt git branch a master origin master origin branch with a ridiculously long name 当你在本地的那个分支上工作时 你想
  • env: python\r: 没有这样的文件或目录

    我的Python脚本beak包含以下 shebang usr bin env python 当我运行脚本时 beak I get env python r No such file or directory 我之前从存储库中提取了这个脚本
  • Android 1.6 中捆绑了哪个版本的 Apache HTTP 客户端?

    我想要一个单独的项目 在普通 JVM 中运行我的服务器通信代码 以进行集成测试 此代码使用这些内置于 Android 框架中的库 http developer android com reference org apache http cl
  • 循环遍历一个对象并找到非空属性

    我有两个相同对象的实例 o1 和 o2 如果我正在做类似的事情 if o1 property1 null o1 property1 o2 property1 对于对象中的所有属性 循环遍历对象中的所有属性并执行此操作的最有效方法是什么 我看
  • 如何获取 clojure 嵌套结构中给定键的所有值

    def threads values id t1 u uid 1 members values uid 1 uid 2 messages values id m1 u uid 1 id m2 u uid 2 id t2 u uid 12 m
  • dnu 发布 - System.ArgumentNullException:值不能为 null

    当运行以下命令时dnu publish 我抛出一个 ArgumentNullException 异常 dnu publish C Project MyProject out C a configuration Debug runtime d
  • 部分类中的属性未出现在数据源窗口中!

    实体框架已创建所需的部分类 我可以将这些部分类添加到 数据源 窗口 并且属性将按预期显示 但是 如果我在单独的源文件中扩展任何类 即使在构建和刷新之后 这些属性也不会出现在 数据源 窗口中 跨源文件的分部类中的所有属性在 数据源 窗口中按预
  • 按主机名端口重定向到 docker 容器

    我想设置从一台服务器为多个站点提供服务 1 http www example org gt node js www running on port 50000 2 http files example org gt node js file
  • 如何在Android应用程序中制作自定义日历?

    我必须为 android 2 1 2 3 制作一个内置日历控件的应用程序 我曾尝试搜索内置和外部库来实现此目的 但未能成功 因此现在我决定自己编写日历 我想通过GridView 我该怎么办呢 如果有可用的代码 请在此处生成 这确实非常有帮助
  • 对于最新的 Unicode 字符,我应该使用哪种字体?

    注意 它们并不新鲜 只是 不支持 不知何故 我正在尝试为我的网站上的元素制作简单的控件 类似于简单的 静音 或 不静音 控件 但是 我还没有找到任何能够处理较新的 Unicode 符号的字体 例如扬声器符号 x1F507 to x1F50A
  • 我的自定义分类 url 链接的页面未显示 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 基本上我有 newsletter php 页面 其中显示所有现有的自定义帖子 从这里 我有一个下拉类别列表 您可以按类别过滤自定义帖子
  • 函数后加分号

    为什么有些人在大括号后面加分号有什么具体原因吗 void foo 不是真的 那里的分号没有区别 这可能是一个习惯问题 如果您愿意 您可以在 C 11 中添加任意多个分号 void foo
  • Windows 10 中的 Django 通道安装失败

    这是环境 操作系统 Windows 10 姜戈 2 0rc Python 3 6 点 10 0 0 视觉工作室社区 2017 以及错误消息 running build ext building twisted test raiser ext
  • Android 打开 pdf 不起作用

    一段时间以来我一直在努力让它发挥作用 我在这里看到了有关如何从 Android 打开 pdf 的其他问题 普遍的共识是我下面的代码 我错过了什么吗 try Uri path Uri parse android resource com Te
  • 是否可以增加 CloudFlare 超时?

    是否可以增加 CloudFlare 超时 如果是 怎么办 我的代码需要一段时间才能执行 而且我不打算在未来几天对其进行 Ajax 化 不 CloudFlare 仅提供这种服务企业计划定制 https www cloudflare com e
  • 在Perl中,如何根据绝对位置的条件来计算成功匹配的出现次数

    仅使用onePerl替换或匹配正则表达式语句 如何修改以下代码 我需要修改的值 pattern在下面的代码中 代码将计算在字符串中找到成功匹配的次数 前提是成功匹配的绝对位置满足特定条件 pattern F1 string F1234F12