这个Perl正则表达式的PHP等价物是什么?
if (/^([a-z0-9-]+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)$/
and $1 ne "global" and $1 ne "") {
print " <tr>\n";
print " <td>$1</td>\n";
print " <td>$2</td>\n";
print " <td>$3</td>\n";
print " <td>$4</td>\n";
print " <td>$5</td>\n";
print " <td>$6</td>\n";
print " <td>$7</td>\n";
print " <td>$8</td>\n";
print " </tr>\n";
}
Run Code Online (Sandbox Code Playgroud)
我建议你不要使用正则表达式,而是使用空格.所有你要检查的是由空格分隔的八列.
看看preg_split在http://www.php.net/manual/en/function.preg-split.php.它应该看起来像:
$fields = preg_split( '/\s+/', $string );
if ( $fields[0] == '...' )
...
Run Code Online (Sandbox Code Playgroud)