2011-05-16 254 views
0

我需要找到文本specic线,从几行文字PHP的preg_match

所以,我有一个文本文件中的几行文字,如:

JOHN 
MIKE 
BEN 
*BJAMES 
PETE 

,我读了内容插入一个数组中,每行文本放入数组的一个单独元素中。

然后我测试的阵列中的每个元素,发现开头的行,说:* B

即:

if (preg_match("/^\*(B)/",$contents[$a])) 

为什么dosnt这项工作?

回答

0

我不会在这里使用双引号,因为\是转义序列:

if (preg_match('/^\*(B)/',$contents[$a])) 

它在这里工作对我来说,虽然即使有双引号,所以你可能要检查什么$contents[$a]是:

$myline = "*BJAMES"; 
if(preg_match("/^\*(B)/", $myline)) 
{ 
    echo "Yes\n"; 
} 
0

我下面的作品(其中$ TXT是你的原始数据):

foreach (explode("\n", $txt) as $a) { 
    if (preg_match("/^\*B/", $a)) { 
     echo "**MATCH " . $a . "<br/>"; 
    } 
}