- 论坛徽章:
- 0
|
现在遇到一个问题,前面用正则表达式匹配,然后调用全局变量$1,$2取得想要的值,但是后面再取其它的值时,用同样的方法,但是$1,$2的值还是上面一个操作的值,代码如下:
- foreach $recip(@Recipients){
- $recip=~ /<.*@(.*)>/;
- my $domain_to =$1; #此处利用$1取得邮件地址的域名部分
- my $localdomain="local_domain";
- my $sign='signed';
- if($domain_to !~ $localdomain)
- {
- my $file="./HEADERS";
- open (FILE,$file) or die "Connot open $!";
- while(<FILE>){
- $msg_id=(split(/:/,$_))[1] if(/Message-ID:/);
- $refers=(split(/:/,$_))[1] if(/References:/);
- }
- close FILE;
- if($refers !~ /$sign/)
- {
- $msg_id =~/<(.*)@ (.*)>/;
- my $ch_id=$1.$sign.$2; #此处的$1的值还是上面那个操作时的值,邮件地址的域名部分
- action_change_header("Message-ID", "$ch_id");
- }
- }
- }
复制代码
搞不懂是什么原因? |
|