perl 代码中 变量 匹配变量的正则表达式的写法

perl 代码中 变量 匹配变量的正则表达式的写法,第1张

说一下你的错误:@pattern是数组变量,数组变量访问的形式,要么是@pattern访问全部变量,要么利用$pattern[$i]的形式访问。你直接写$pattern是访问不到任何东西的。所以需要对@pattern再加一个循环进行正则匹配。下面是我写的perl代码,直接读取数组型字符了,为方面没有读入文件,和你说的问题应该类似。结果图也附上了,不知道和你说的是否符合。

#!/usr/bin/perl
 
@configfile = ("I","am","a","patten1","Not","Apatten");
@patten = ("patten1","patten2","patten3");
$i=0;
$j=0;
foreach my $line (@configfile)
{
      foreach my $pad1 (@patten)
{
  if ($line =~ /$pad1/){
          print "\$configfile[$i]与\$patten[$j]匹配\n";
   }
        $j++;
         }
$j=0;
$i ++;
}

可以的,

javascript中的正则表达式有两种书写方式;

new RegExp();

//

第一种是可以接受变量的,第二种不行,因为会把//里的内容当字符串处理。

<script>
var str = 'sfsffdgdsrgergsdga';
var sRex = 'ff';
var reg = new RegExp(sRex);
alert(strmatch(reg));
</script>

你的想法是可以的,是可行的,是正确的,这个帖子我几天前回复过,问题还没有解决呀,我真是佩服这样是速度,下面我给出完整的测试程序代码,你注释第一行或者第二行,分别运行一下就可以看到结果:
<php
$key1='<title>';$key2='</title>';
//$key1='<table>';$key2='</table>';
$buffer='<title>this is title</title><table>this is table</table>';
preg_match_all("|$key1(+)$key2|i",$buffer,$match);
print_r($match[1]);
>
补充:
请你复制粘贴我的程序,用记事本新建一个文件,我是测试通过了粘贴上来的,你测试不行绝对是你粘贴错误,我用PHP4和PHP5都测试了的,没有问题。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12861733.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存