Perl:使用变量传递正则表达式搜索和替换

2023-11-23

我有一个 Perl 脚本,它读取正则表达式搜索并替换 INI 文件中的值。

在我尝试使用捕获变量($1 或 \1)之前,这工作正常。这些被逐字替换为 $1 或 \1。

有什么想法可以让这个捕获功能通过变量传递正则表达式位吗?示例代码(不使用 ini 文件)...

$test = "word1 word2 servername summary message";

$search = q((\S+)\s+(summary message));
$replace = q(GENERIC $4);

$test =~ s/$search/$replace/;
print $test;

这导致...

word1 word2 GENERIC $4

NOT

word1 word2 GENERIC summary message

thanks


使用双重评估:

$search = q((\S+)\s+(summary message));
$replace = '"GENERIC $1"';

$test =~ s/$search/$replace/ee;

注意双引号$replace and ee在......的最后s///.

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

Perl:使用变量传递正则表达式搜索和替换 的相关文章

  • 正则表达式从字符串中提取 IP 和端口

    我正在使用 Perl 尝试从字符串中提取 IP 地址和端口 我尝试使用的正则表达式是 s sip 字符串是 sip 255 255 255 255 8080 transport TCP sip 255 255 255 255 8080 显然
  • 如何在 sed 中转义方括号[重复]

    这个问题在这里已经有答案了 我正在使用 grep 和 sed 解析遗留的 C 代码 当尝试替换方括号时 发生了一些奇怪的事情 以下代码替换方括号效果很好 echo xyx xzx xyx sed s g 结果是 xyx xzx xyx 当我
  • 正则表达式,选择最接近的匹配

    假设以下单词序列 BLA text text text text text text BLA text text text text LOOK text text text BLA text text BLA 我想做的是将 BLA 中的文本
  • preg_match 所有以@开头的单词?

    我对正则表达式不太确定 所以我不得不问你 如何用 PHP 判断字符串中是否包含以 开头的单词 例如我有一个像 This is for codeworxx 这样的字符串 我很抱歉 但我没有任何起点 希望你能帮忙 谢谢 萨沙 好的 谢谢你的结果
  • 由于重复捕获组而不是捕获重复组,正则表达式不匹配

    我有以下正则表达式 A G A G 具有以下表达式 A BsCb 我期望 3 个匹配结果 A Bs Cb 但测试在https regex101 com https regex101 com 只给我最后一场比赛Cb 并告诉我重复捕获组只会捕获
  • Perl 的反引号、system 和 exec 有什么区别?

    有人可以帮帮我吗 在 Perl 中 以下之间有什么区别 exec command and system command and print command 还有其他方法可以运行 shell 命令吗 exec 执行命令并一去不复返 这就像一个
  • 如何将 Perl 转换为 C?

    有没有可用的工具可以将 Perl 源代码转换为 C 源代码 什么平台都可以 对此的规范答案是MJD 的 为什么不将 Perl 翻译成 C http www perl com pub a 2001 06 27 ctoperl html
  • [Regex]::Replace() 和 -replace 有什么区别?

    我明白了之间的区别 Replace and replace 但是什么是 replace and Regex Replace 我测试了以下两个代码 但对我来说结果完全相同 我还提到了 PowerShell Cookbook O reilly
  • 删除匹配前的一个单词和一个单词

    匹配之前的一个单词可以是一组任何符号 例如 D E F 我有一个正则表达式 s w s XXX 输入示例 This is KKK M D D xXx PPP输出示例 This is KKK PPP 所以我需要删除 XXX 之前的 1 个单词
  • 如何在 jQuery 中将标题转换为 URL slug?

    我正在 CodeIgniter 中开发一个应用程序 我试图在表单上创建一个字段来动态生成URL slug 我想做的是删除标点符号 将其转换为小写 然后用连字符替换空格 例如 Shane s Rib Shack 将变成 shanes rib
  • 在 Ubuntu 中执行 .cgi 文件

    我在 Ubuntu 下运行 Apache PHP 当我运行 cgi 文件时 通过http localhost mycgi cgi 浏览器将显示代码而不是运行它 如何让浏览器执行 CGI 文件而不是显示其内容 将这些行添加到您的 apache
  • 如何检查号码是否是巴基斯坦用户的手机号码而不是固定电话号码

    我所做的是从开头删除 92 或 0092 并使用以下代码检查它是否是巴基斯坦人的有效手机号码 if preg match 3 0 4 0 9 number 1 Pakistani mobile number else not a pakis
  • Perl Parallel::Forkmanager 不允许收集变量值

    也许因为子进程不知道我的散列 请参阅下面的代码 散列 输出没有收集任何内容 除了写入 tmp 文件之外 还有其他方法来收集该值吗 foreach Item AllItems pid pm gt start Item and next Tem
  • 选择前 n 个字符相等的行(MySQL)

    我有一张带有玩家句柄的桌子 如下所示 1 N Laka 2 N James 3 nor Brian 4 nor John 5 Player 2 6 Spectator 7 N Joe 从那里我想选择第一个 n 字符匹配的所有玩家 但我不知道
  • RegularExpressionAttribute - 如何使其客户端验证不区分大小写?

    我有一个用于客户端验证的字符串 private const String regex b d 5 s s d 5 A Z 2 d 3 s s 1 d 3 s 我在我的中使用这个字符串 RegularExpression regex Erro
  • 为什么我的 javascript regex.test() 给出交替结果[重复]

    这个问题在这里已经有答案了 可能的重复 Javascript 正则表达式返回 true 然后 false 然后 true 等等 https stackoverflow com questions 2630418 javascript reg
  • 正则表达式最多匹配五个单词

    我有一个正则表达式 a zA Z 0 9 1 5 它验证该单词包含字母数字字符和少数特殊字符 并且长度不应超过5人物 如何使此正则表达式接受最多五个与上述正则表达式匹配的单词 a zA Z 0 9 1 5 s a zA Z 0 9 1 5
  • 将html数据解析成python列表进行操作

    我正在尝试读取 html 网站并提取其数据 例如 我想查看公司过去 5 年的 EPS 每股收益 基本上 我可以读入它 并且可以使用 BeautifulSoup 或 html2text 创建一个巨大的文本块 然后我想搜索该文件 我一直在使用
  • 正则表达式的 o 修饰符是什么意思?

    Ruby 正则表达式有一些选项 例如i x m o i例如 意味着忽略大小写 什么是o选项是什么意思 在ri Regexp 它说o意味着执行 仅插值一次 但是当我这样做时 a one b a a two b不改变 它保持 one 我缺少什么
  • 扩展 RegExp 以获取文件扩展名

    我知道 已经有很多基于 RegExp 的解决方案 但是我找不到适合我需求的解决方案 我有以下函数来获取 URL 的各个部分 但我还需要文件扩展名 var getPathParts function url var m url match w

随机推荐

  • Firemonkey 中的 Cleartype 字体/文本渲染

    下面是一个仅包含 TEdit 控件的示例 VCL 应用程序 如果您编译类似的 Firemonkey FMX 应用程序 您会注意到这一点 小L字母疯狂地跳来跳去 根据我的研究我发现thisG 帖子的结果是 如您所见 结果更好 跳跃消失了 然而
  • 如何在一定时间后删除MySQL记录

    我想在 7 天后从 MySQL 数据库中删除一些消息 我的消息表行具有以下格式 编号 留言 日期 日期是正常格式的时间戳 2012 12 29 17 14 53 我认为 MySQL 事件将是替代 cron 作业的方法 对于经验丰富的 SQL
  • 在 C++ 中将宽字符字符串转换为小写

    如何在 C 中将 wchar t 字符串从大写转换为小写 该字符串包含日语 中文 德语和希腊字符的混合体 我想过用塔罗 http msdn microsoft com en us library 8h19t214 28VS 80 29 as
  • Android 棒棒糖工具栏在打开/关闭抽屉和后退按钮之间切换

    我有标准导航抽屉 但现在我正在尝试使用工具栏修改它 早些时候我的代码看起来像 MainActivity java Override protected void onCreate Bundle savedInstanceState supe
  • 从 TensorFlow 图中删除 dropout 操作

    我有一个经过训练的冻结图 我正在尝试在 ARM 设备上运行它 基本上 我使用 contrib pi examples label image 但使用我的网络而不是 Inception 我的网络接受了 dropout 训练 这现在给我带来了麻
  • 无法在 Windows 8 上使用 SetSystemTime 设置时钟

    我的应用程序使用SetSystemTime 从 GPS 源设置 PC 时钟 这在禁用用户帐户控制的 Windows 7 中工作正常 但在 Windows 8 中 即使禁用 UAC 它也会失败 我得到的错误是ERROR PRIVILEGE N
  • 压缩和解压缩流

    我发现这篇关于用JAVA实现简单代理服务器的文章 http www java2s com Code Java Network Protocol Asimpleproxyserver htm 该代码只是从客户端获取一些流 然后将其发送到服务器
  • UITextView 高度在键入/不使用故事板时动态更改

    我有这个 UITextView 我希望它的高度在用户在其上打字时动态变化 我想以编程方式完成它 我的 UITextView 位于另一个 UIView 之上 约束条件设置如下 addtextview leadingAnchor constra
  • SignalR with IoC (Castle Windsor) - 集线器的寿命是多少?

    我刚刚开始使用 SignalR 并为 SignalR 创建了一个自定义解析器 因此我可以使用 Castle Windsor 通过集线器构造函数注入依赖项 我有点假设我只需要注册依赖项 但我发现在我的应用程序运行之前还需要注册集线器本身 这是
  • 针对 Core 2 或 Core i7 架构全面优化 memcpy/memmove?

    配备 DDR3 双通道内存的 Core 2 处理器的理论最大内存带宽令人印象深刻 根据维基百科文章在架构上 每秒 10 或 20 GB 然而 普通的 memcpy 调用无法实现这一点 3 GB s 是我在此类系统上见过的最高速度 这可能是由
  • 提交前确认表单

    我正在使用一个简单的表单 我想允许用户在表单提交之前进行确认 我知道使用 jQuery 这会很容易 但我对代码有点困惑 function testform submit function submitbtn text confirm 我知道
  • 如何在 Angular 4 中使用 ngStyle 作为背景 url

    我有以下 html li div class w3l banner nav right banner1 style background url assets images 2 jpg no repeat 0px 0px h3 Make y
  • Python tf-idf:更新 tf-idf 矩阵的快速方法

    我有一个包含数千行文本的数据集 我的目标是计算 tfidf 分数 然后计算文档之间的余弦相似度 这就是我按照教程在 Python 中使用 gensim 所做的事情 dictionary corpora Dictionary dat corp
  • Spring Boot 是否可以通过 JAR 打包来提供 JSP?

    我熟悉 Spring BootJSP 示例应用程序 然而该示例使用了WAR包装 是否可以做同样的事情
  • 引用 UWP 和 ASP.NET 5 中的类库

    我正在尝试创建一个类库 其中包含 WebAPI 使用 ASP NET 5 和消费 UWP 应用程序的常见对象 主要是 DTO 但是 我还没有弄清楚如何创建类库 以便可以从其他项目中引用它 到目前为止我已经尝试过 首先 我尝试了一个类库 包
  • 使用 axios.get 时套接字挂起,但使用 https.get 时套接字不挂起

    据我所知 我正在使用两种不同的方法做同样的事情 const https require https const axios require axios let httpsAgent new https Agent rejectUnautho
  • 如何在命名空间中使用连字符?

    我在用https packagist org packages bitdevelopment yii2 validators Yii2 中的字数验证 但我得到 gt PHP Parse Error yii base ErrorExcepti
  • 如何排除`node_modules/@types/**/node_modules`?

    我遇到过一种情况 其中的类型定义node modules types正在安装自己的 types 依赖项 并且这些 嵌套 types 与我的顶级 types 冲突 types angular v1 5 angular ui bootstrap
  • Lucene - 短语中的通配符

    我目前正在尝试使用 Lucene 来搜索索引中填充的数据 我可以通过将其括在括号中来匹配确切的短语 即 处理文档 但无法让 Lucene 通过执行任何类型的 处理文档 来找到该短语 明显的区别是末尾的通配符 我目前正在尝试使用 Luke 来
  • Perl:使用变量传递正则表达式搜索和替换

    我有一个 Perl 脚本 它读取正则表达式搜索并替换 INI 文件中的值 在我尝试使用捕获变量 1 或 1 之前 这工作正常 这些被逐字替换为 1 或 1 有什么想法可以让这个捕获功能通过变量传递正则表达式位吗 示例代码 不使用 ini 文