为了账号安全,请及时绑定邮箱和手机立即绑定

PHP - 使用异常文件从文件中删除多行

PHP - 使用异常文件从文件中删除多行

PHP
幕布斯6054654 2022-07-16 18:45:25
我有一个文本文件,其中包含:text1 bla blatext2 bla2 bla2text3 bla3 bla4text4 bla4 bla7text5 bla8 bla7text6 bla9 blu1和另一个文件,其中包含:bla7bla3text1我想创建一个 PHP 脚本,它基于第一个文件创建一个新文件,只包括不包含第二个文件中的文本的行。使用上面的示例,我希望得到以下结果:text2 bla2 bla2text6 bla9 blu1我阅读了其他帖子并尝试使用下面的代码,但它只删除了一个单词。$lines  = file('test.txt');$search = 'text2';$result = '';foreach($lines as $line) {    if(stripos($line, $search) === false) {        $result .= $line;    }}file_put_contents('cleanfile.txt', $result);任何关于我做错了什么以及如何使代码适用于多个单词的建议将不胜感激。
查看完整描述

1 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

如果您使用 OR 加入排除词|,那么您可以 grep 查找包含这些词的行并排除它们:


$result = preg_grep('/\b' . implode('|', file('exclusions.txt')) . '\b/i',

                    file('test.txt'),

                    PREG_GREP_INVERT);


file_put_contents('cleanfile.txt', $result);

\b确保有一个单词边界,例如不bla匹配。修饰符使它不区分大小写,因为您使用bla2了.istripos


查看完整回答
反对 回复 2022-07-16
  • 1 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信