我想删除包含$_POST['link']
给定内容的行
它已经可以与。csv文件。此时,用于。txt-File不做任何事。
我的php代码
//txt
$txt = file('../textFiles/websites.txt');
$fpTXT = fopen('../textFiles/websites.txt', 'w');
foreach ($txt as $lines) {
if (!str_contains($lines[2], strval($_POST['link']))) {
fwrite($fpTXT, $lines);
}
}
fclose($fpTXT);
带js的触发器
<!-- Delete-Function -->
<script>
async function deleteRequest(elem) {
$.ajax({
type: 'POST',
url: '/sites/deleting.php',
dataType: 'html',
data: {
'link': elem
}
});
location.reload();
};
</script>
</head>
<!-- Delete Icon -->
<?php $delBtn = "<td><button class='delete' onclick=\"deleteRequest(this.parentNode.parentNode.getElementsByTagName('td')[2].innerText)\"><i class='material-icons'></i></button></td>"; ?>
csv的代码(在文本代码上方)
//CSV
$csv = array_map('str_getcsv', file('../textFiles/websites.csv'));
$fpCSV = fopen('../textFiles/websites.csv', 'w');
foreach ($csv as $fields) {
if (!str_contains($fields[2], strval($_POST['link']))) {
fputcsv($fpCSV, $fields);
}
}
fclose($fpCSV);
2行来自。txt文件
如果您只想替换文件中的一个单词或句子,您可以使用< code>str_replace轻松完成:
$file = '../textFiles/websites.txt';
$findText = $_POST['link'];
file_put_contents($file, str_replace($findText, '', file_get_contents($file)));
从< code>file()获得的“$lines”与CSV记录不是一回事。每一行都是一行,所以< code>$lines[2]引用该行的第三个字符:
$lines = "https://www.google.com\n";
$lines[2] is just a "t".
在CSV记录中,您将拥有
$lines = [ "A1", "B1", "C1", "D1" ]
and here, $lines[2] is "C1".
您应该过滤文本行以删除不需要的文本行
$outputFile = '../textFiles/websites.txt';
$remove = strval($_POST['link']);
$txt = array_filter(
file($outputFile),
function ($eachLine) use ($remove) {
return !str_contains($eachLine, $remove);
// or equivalently,
// return false === strpos($eachLine, $remove)
// In all cases, consider that if someone sends ".",
// you will remove ALL sites, since they'll all have a dot in their site name.
// So maybe is better
// return $remove !== trim($eachLine)
// (the "trim" is needed to get the carriage return at the end of line out of the comparison, which otherwise would always fail).
}
);
// Now you need to write the cleaned file
file_put_contents($outputFile, implode('', $txt));
问题内容: 我正在尝试从文本文件中读取文本,读取行,删除包含特定字符串的行(在这种情况下为“坏”和“顽皮”)。我写的代码是这样的: 我这样写,但没有成功。 重要的一件事是,如果文本的内容是这样的: 我不希望输出有空行。所以不喜欢: 但是像这样: 我应该从上面的代码中编辑什么? 问题答案: 您可以像这样使代码更简单,更易读 使用上下文管理器和任何。
我正在尝试删除此df中的所有行,其中“DB Serial”列包含字符*: 我正在使用: 但我得到这个错误:
我是新的VBA和不是非常熟练的编程,所以我希望在这里得到一些帮助。 提前谢了。
问题内容: 我的意思是,我想从Android上的文本中删除行。如何删除?我不想读取一个txt并使用删除行创建另一个。我想从现有的txt中删除行。谢谢。 问题答案: 尽管看起来很琐碎,但这是一个非常棘手的问题。对于可变的行长,也许唯一的选择是逐行读取文件以识别目标行和目标行。然后复制文件的以下部分(从开始),最终将文件长度截断为原始大小减去目标行的长度。我使用a 访问内部指针,也按行读取。 该程序需
考虑矩阵: 然后,列表: 如果badcombos矩阵中的任何颜色组合出现在列表中(即上例中的子列表[[3]]和[[4]]),则将从列表中删除,我如何根据这些条件“减少”列表。
假设我有一张工作表--第一张--有5000多行(例如,每行“a”-“H”)。 在另一个工作表--第2号--中,我有一个“to-remove-list”--一个包含400个值的单列“a”,每个值包含字母数字字符串(例如:xxx1234)。 如果第'e'列包含“to-remove-list”(第2页的第'a'列)中的任何值,则必须删除第1页中的每一行。 删除整行,我的意思是删除该行并向上移动(不离开空