在档案中显示数据---
Kortrijk]]||75,592||74,790||73,777VWVVLG
Hasselt]]||65,503||68,085||70,584VLIVLG
Sint-Niklaas]]||68,277||68,290||70,016VOVVLG
Ostend]]||69,039||67,279||69,115VWVVLG
|22Tournai]]||67,291||67,379||67,844WHTWAL
|23Genk]]||61,532||62,842||64,095VLIVLG
|24Seraing]]||62,832||60,557||61,237WLGWAL
这是我wiki.txt
文件中的数据集,我需要删除“]] ||之后的所有内容来自各行。
//代码实现后需要数据
Kortrijk
Hasselt
Sint-Niklaas
Ostend
|22Tournai
|23Genk
|24Seraing
这是我遇到的代码,但我不知道如何在我的代码中使用它,我跟着preg_replace
,正则表达式等但都超出了我的头脑。帮助我plz和plz让我知道我可以遵循这些工作(specially regular expression for a novice
)的任何教程链接。
$file="wiki.txt";
file_put_contents($file,str_replace('find','replace',file_get_contents($file)));
答案 0 :(得分:1)
preg_replace('/]]\|\|.*$/m', '', $fnames);
匹配']] ||'从字面上看,然后是所有字符(。*),直到'$'行结束,并用''替换它们。
另外:查看此tutorial on RegExp
答案 1 :(得分:1)
尝试:
$arr = file("wiki.txt"); //will give you contents as array
$newContent = "";
foreach($arr as $key => $val) {
$newContent .=substr_replace($val, '', strpos($val, ']'))."\n";
}
//add changed content back to file
file_put_contents("wiki.txt", $newContent);
//result is:
Kortrijk
Hasselt
Sint-Niklaas
Ostend
|22Tournai
|23Genk
|24Seraing
答案 2 :(得分:1)
您可能希望打开文件,读取内容,然后将所需的部分写入新文件,而不是“更改”文件。如果一切按计划进行,请用新文件替换旧文件。这样更安全。
<?php
$lines = file("input.txt");
$output = "";
foreach ($lines as $line) {
$output .= substr($line, 0, strpos($line, "]")) . "\n";
}
file_put_contents("output.txt", $output);
解决这个问题的方法很多。