回答
$ req_msg =〜s/\ $ {$ toReplace}/$ replacementments - > {$ toReplace}/g;
s用于替代。 $content=~ s/old_value/new_value/modifier;
(调节剂可以是I,G,X,沿着或组合)
例:
$content = "Hi I am a coder and I like coding very much!";
$content =~ s/i/eye/i;
现在$内容将包含 “海耶的眼睛是一个程序员和眼睛一样的编码非常”
以同样的方式,$ {$ toReplace}简单地表示一个标量引用,它是旧值,需要替换,$ replacements - > {$ toReplace}表示$ replacements是一个哈希引用,其键为$ toReplace。 它对$ hash_value = hash_ref - > {key};
徘徊无论它找到标量参考返回的值,获取通过在$ req_msg
找到对应的哈希值参考的主要替代但我猜你问这个问题,因为你有空白更换。这可能是由于标量参考问题。
此代码片段可能有助于消除您的疑问。
#!/usr/bin/perl
use strict;
use warnings;
my $value = "Jassi";
my $scalar_ref = \$value;
print "scalar_ref = $scalar_ref \n and value = $value and ${$scalar_ref}\n";
my %hash = ("Jassi", "aliencoders");
my $hash_ref = \%hash;
my $reg_msg = "Hi this is Jassi";
print "reg_msg = $reg_msg \n";
$reg_msg =~ s/${$scalar_ref}/$hash_ref->{${$scalar_ref}}/;
print "reg_msg after s = $reg_msg\n";
请看第二行!
先决条件对于这项工作有两个变量:
$toReplace
- 包含一个任意值$replacements
- 包含,ERM一个HASH裁判,更换
鉴于$toReplace
包含“富”,$req_msq
的内容被搜索${foo}
(与领先的单个空间)机智h每次发生这个被替换为$replacements->{foo}
。
我认为它会寻找'$ {foo}',而不是'$ foo'。 – Qtax 2012-02-29 08:49:00
当然,@ Qtax。它被纠正了。 – 2012-02-29 08:54:03
它替换无论是存储在哈希参考$replacements
用钥匙blabla
文本${blabla}
的每一次出现,例如:
$replacements = { 'blabla' => 'blubb' };
将尽一切${blabla}
在$req_msg
被取代blubb
。
- 1. 任何人都可以解释我这个正则表达式
- 2. 任何人都可以解释这个正则表达式
- 3. 任何人都可以向我详细解释这个正则表达式吗?
- 4. 任何人都可以解释这个正则表达式模式?
- 5. 任何人都可以完成这个正则表达式?
- 6. 有人可以解释这个正则表达式QRegExp exp(“// [^ \ n] *”);
- 7. 有人可以解释这个正则表达式吗?
- 8. 有人可以解释这个正则表达式
- 9. 任何人都可以为我解释这个ACL模式
- 10. 任何人都可以请解释这个密码复杂性正则表达式给我?
- 11. 任何人都可以解释这个列表的理解?
- 12. 任何人都可以解释这个复杂的指针表达式吗?
- 13. 任何人都可以解释我这个代码的工作
- 14. 任何人都可以解释我StandardScaler?
- 15. 任何人都可以解释这个shell语句的含义吗?
- 16. 任何人都可以解释这个ember-cli错误的含义吗?
- 17. 任何人都可以解释我这个代码行吗?
- 18. 任何人都可以解释我这个javax swing方法吗?
- 19. 任何人都可以用英语向我解释这个吗?
- 20. 任何人都可以解释我这个功能吗?
- 21. 任何人都可以解释这个matlab代码给我吗?
- 22. 任何人都可以解释这个jQuery插件给我吗?
- 23. 任何人都可以解释我这个SQL查询
- 24. 任何人都可以向我解释这个SOQL查询吗?
- 25. 任何人都可以向我解释这个CSS
- 26. 任何人都可以向我解释这个LabView模拟?
- 27. 有人能为我解释这个JavaScript正则表达式吗?
- 28. 任何人都可以解释默认括号的含义吗?
- 29. 任何人都可以向我解释这个lambda表达式吗?这真是让我发疯
- 30. 解释这个正则表达式:(?:| {} I)
感谢您的回复 – Balakrishna 2012-02-29 10:48:08
我的荣幸balakrishna – Jassi 2012-06-18 17:37:26