Perl:如何在一个字符串中找到匹配项并在另一个字符串中进行替换?

卡巴霍克

可以说我有一个包含以下信息的文件learning.txt:

A  *
B  &
C  (
D  )

如何获取用户输入的字符串abc并返回*&(

Hynek -Pichi-他走了出去

Perl中有一个非常有效的(O(N + M))解决方案

my %replace = ( A => '*', B => '&', C => '(', D => ')' );
my $re = join '|', map quotemeta, keys %replace;
$re = qr/($re)/;

# and somewhere else in the scope with $re and %replace
s/$re/$replace{$1}/g;

但是对于不区分大小写的情况,它有点复杂

use feature qw(fc);    # since v5.16 use lc otherwise
my %replace = ( A => '*', B => '&', C => '(', D => ')' );
my $re = join '|', map quotemeta, keys %replace;
$re = qr/($re)/i;
my %replace_fc;
@replace_fc{ map fc, keys %replace } = values %replace;

# and somewhere else in the scope with $re and %replace_fc
s/$re/$replace_fc{fc $1}/g;

只给%replace您的文件中像这样

while (<>) {
    my ($key, $val) = split;
    $replace{$key} = $val;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

查找一个字符串,并在找到第一个字符串后替换另一个字符串

来自分类Dev

如何返回在另一个字符串中找到的字符串的索引?

来自分类Dev

如何在clob中找到一个特定的字符串,它的前缀是另一个字符串

来自分类Dev

如何从另一个字符串替换一个字符串?

来自分类Dev

如何从终端用更多文件中的另一个字符串替换一个字符串?

来自分类Dev

当一个字符串与另一个字符串匹配时,如何创建条件总和以加数字?

来自分类Dev

如何检查一个字符串是否与另一个字符串匹配

来自分类Dev

如何将一个字符串值与另一个字符串值进行比较?

来自分类Dev

如何在jquery中的另一个字符串中间附加一个字符串变量?

来自分类Dev

如何在Lua中的另一个字符串中插入一个字符串?

来自分类Dev

如何在另一个字符串的x位置插入一个字符串?

来自分类Dev

使用getch后如何在另一个字符串的末尾连接一个字符串

来自分类Dev

如何在Shell中获取另一个字符串中一个字符串的行号

来自分类Dev

在另一个字符串之后替换字符串的第一个匹配项

来自分类Dev

用字符串中的另一个字符替换“字符”

来自分类Dev

perl字符串与另一个字符串完全匹配

来自分类Dev

每次一个字符串范围包含另一个字符串范围的子集时,如何在 Excel 中进行计数?

来自分类Dev

在数组中找到第一个字符串匹配?

来自分类Dev

用不包括模式的另一个字符串替换字符串中的一个字符

来自分类Dev

如何用 MySQL 中另一个字符串和一个字段的串联替换任何字符串

来自分类Dev

匹配一个字符串,但如果包含另一个字符串则不匹配

来自分类Dev

替换一个字符串,并用另一个字符串创建一列

来自分类Dev

如何尽快找到另一个字符串中的特定字符串?

来自分类Dev

如何用另一个字符串替换特定的字符串?

来自分类Dev

如何替换连接到另一个字符串的字符串?

来自分类Dev

Perl:我们如何检查哪个字符串是另一个字符串的子字符串?

来自分类Dev

如果与另一个字符串匹配,如何使JavaScript更改字符串?

来自分类Dev

如果在另一个字符串中找到它们,则用空白替换字符串的字母

来自分类Dev

MySQL和PHP在表中搜索一个字符串,但替换另一个字符串

Related 相关文章

  1. 1

    查找一个字符串,并在找到第一个字符串后替换另一个字符串

  2. 2

    如何返回在另一个字符串中找到的字符串的索引?

  3. 3

    如何在clob中找到一个特定的字符串,它的前缀是另一个字符串

  4. 4

    如何从另一个字符串替换一个字符串?

  5. 5

    如何从终端用更多文件中的另一个字符串替换一个字符串?

  6. 6

    当一个字符串与另一个字符串匹配时,如何创建条件总和以加数字?

  7. 7

    如何检查一个字符串是否与另一个字符串匹配

  8. 8

    如何将一个字符串值与另一个字符串值进行比较?

  9. 9

    如何在jquery中的另一个字符串中间附加一个字符串变量?

  10. 10

    如何在Lua中的另一个字符串中插入一个字符串?

  11. 11

    如何在另一个字符串的x位置插入一个字符串?

  12. 12

    使用getch后如何在另一个字符串的末尾连接一个字符串

  13. 13

    如何在Shell中获取另一个字符串中一个字符串的行号

  14. 14

    在另一个字符串之后替换字符串的第一个匹配项

  15. 15

    用字符串中的另一个字符替换“字符”

  16. 16

    perl字符串与另一个字符串完全匹配

  17. 17

    每次一个字符串范围包含另一个字符串范围的子集时,如何在 Excel 中进行计数?

  18. 18

    在数组中找到第一个字符串匹配?

  19. 19

    用不包括模式的另一个字符串替换字符串中的一个字符

  20. 20

    如何用 MySQL 中另一个字符串和一个字段的串联替换任何字符串

  21. 21

    匹配一个字符串,但如果包含另一个字符串则不匹配

  22. 22

    替换一个字符串,并用另一个字符串创建一列

  23. 23

    如何尽快找到另一个字符串中的特定字符串?

  24. 24

    如何用另一个字符串替换特定的字符串?

  25. 25

    如何替换连接到另一个字符串的字符串?

  26. 26

    Perl:我们如何检查哪个字符串是另一个字符串的子字符串?

  27. 27

    如果与另一个字符串匹配,如何使JavaScript更改字符串?

  28. 28

    如果在另一个字符串中找到它们,则用空白替换字符串的字母

  29. 29

    MySQL和PHP在表中搜索一个字符串,但替换另一个字符串

热门标签

归档