gpt4 book ai didi

regex - 我可以在 VIM 或 Perl 的单个正则表达式中替换多个项目吗?

转载 作者:行者123 更新时间:2023-12-03 09:32:38 25 4
gpt4 key购买 nike

假设我有字符串“快速的棕色狐狸跳过懒惰的狗”,我可以用一个正则表达式将其更改为“缓慢的棕色狐狸跳过精力充沛的狗”吗?目前,我针对这种情况使用了两组正则表达式。 (在本例中,我使用 s/quick/slow/ 后跟 s/lazy/energetic/ 。)

最佳答案

替换的第二部分是双引号字符串,因此可以发生任何正常的插值。这意味着您可以使用捕获的值来索引哈希:

#!/usr/bin/perl

use strict;
use warnings;


my %replace = (
quick => "slow",
lazy => "energetic",
);

my $regex = join "|", keys %replace;
$regex = qr/$regex/;

my $s = "The quick brown fox jumps over the lazy dog";

$s =~ s/($regex)/$replace{$1}/g;

print "$s\n";

关于regex - 我可以在 VIM 或 Perl 的单个正则表达式中替换多个项目吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/765894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com