如何解决从文本文件PHP提取一行
| 我有一个文本文件,想用PHP解析 任何人有任何想法我怎么能得到IMPATTO LTDIMPATTO LTD ZAHLUNG: A
从上面的线?
我在想也许是正则表达式,但是没有统一的方式提取它。.我猜最好是一个能使我得到文本的表达式,直到Zahlung的Z为止。这可能吗?
顺便说一句,第一个单词可以是可变长度的...
解决方法
$string = null;
$itms = explode(\'ZAHLUNG\',$line);
if(is_array($itms) AND isset($itms[0])) {
$string = trim($itms[0]);
}
echo $string; // IMPATTO LTD
, $pos = strpos($line,\'ZAHLUNG\');
$string = trim(substr_replace($line,\'\',$pos));
如果\'ZAHLUNG \'是常量,那么使用正则表达式是个坏主意。
, 试试这个,它将文件读入一个数组,然后逐行遍历该数组以查看是否找到了您的文本
$lines = file(\'test.txt\');
$string_to_find = \'IMPATTO LTD\';
foreach ($lines as $line) {
if(strstr($line,$string_to_find)){
echo \'found\'. $string_to_find;
}
}
, 如果ѭ4是固定分隔符:
<?php
$string = \'IMPATTO LTD ZAHLUNG: A\';
if( preg_match(\'/^(.+)ZAHLUNG:/\',$string,$matches) ){
var_dump( trim($matches[1]) );
}
, 您走在正确的轨道上。 preg_match是您的朋友。
$pattern = \"/IMPATTO LTD/\";
$matched = preg_match($pattern,$string);
在手册页上阅读,因为此功能非常强大,并且具有我在发布的简单示例中未使用的几个有用的参数。
更新:
请原谅我的英语不好,看来我完全误解了这个问题,如果解决不了适当的问题,将删除此帖子。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。