Thema: Kommentare prüfen
-
12.07.2012, 20:37 #1
- Registriert seit
- 19.11.2011
- Beiträge
- 2.128
Thanked 1.936 Times in 1.180 PostsKommentare prüfen
Hallo,
ich habe eine Textdatei mit Kommentaren und möchte jetzt gerne beim Hinzufügen eines Kommentars prüfen ob das Kommentar nicht bereits existiert.
Diese Textdatei ist immer gleich strukturiert und zwar so:
[Datum] Kommentar
[Datum] Kommentar
[Datum] Kommentar
Es sind ca. 5000 Zeilen mit Durchschnittlich 85 Zeichen.
Dafür muss ich jetzt natürlich das Datum wegmachen(um richtig vergleichen zu können), dafür hab ich mir ein Regexpattern rausgesucht.
Leider hänge ich(ich kann kein Php )
PHP-Code:<?php
ini_set ('display_errors' , 1);
$buffer = file("Sentences.txt", FILE_IGNORE_NEW_LINES);
preg_replace("(\d{2,2}.\d{2,2}.\d{4,4})", "", $buffer)
echo $buffer;
// Hier wird später hinzugefügt
?>
Meine Fragen:
- Ist $buffer überhaupt so okay oder gibts da andere Möglichkeiten?
Ich meine wir reden hier von ca. 170.000 Zeichen
- Wie muss ich vorgehen? Schleife?
- Ich möchte nicht unbedingt fertigen Code, Tipps sind für mich auch schon hilfreich!Geändert von !lkay (12.07.2012 um 20:48 Uhr)
-
12.07.2012, 20:47 #2
AW: Kommentare prüfen
Wenn das Datum immer in dem Format ist und auch 01.12.2001 anstatt 1.12.2001 schreibt, kannst du das ganze mit str_split() ( PHP: str_split - Manual ) lösen, in dem du jede Zeile einfach nach den Zeichen (8 Zahlen, 2 Punkte, 2 Klammern => 12) spaltest. Dann brauchst auch kein nerviges RegEx.
Anstatt file() würde ich die aber fopen() empfehlen.Geändert von Comu (12.07.2012 um 20:50 Uhr)
-
12.07.2012, 20:59 #3
- Registriert seit
- 19.11.2011
- Beiträge
- 2.128
Thanked 1.936 Times in 1.180 PostsAW: Kommentare prüfen
Und wie ist es mit if in array?
Kann ich nicht im ganzen Array das Datum entfernen und dann mit if!in_array prüfen ?
-
12.07.2012, 21:11 #4Gelöschter BenutzerGast
AW: Kommentare prüfen
Hey.
Ich würde es so machen:
Als erstes die Datei mit file_get_contents() laden und jedes Kommentar in einen Array packen. Danach nochmal durch jedes Kommentar gehen und mit in_array() überprüfen, ob das Kommentar schon existiert.
Meine hallo.txt sieht einfach mal so aus:
Code:[17.02.2012] Hey, wie gehts? [19.02.2012] Gut und dir? [19.02.2012] Hey, wie gehts?
PHP-Code:<?php
$data = file_get_contents('hallo.txt');
$sentences = explode("\r\n", $data);
$senteces_array = array();
foreach($sentences as $value) {
$value = preg_replace("(\d{2,2}.\d{2,2}.\d{4,4})", "", $value);
array_push($senteces_array, $value);
}
//Alle Kommentare sind nun im Array $stences_array
//Dupliate löschen
reset($senteces_array);
while (list($key, $value) = each($senteces_array)) {
if(in_array($value, $senteces_array)) {
unset($senteces_array[$key]);
}
}
?>
Ähnliche Themen
-
Website: Rechtschreibung prüfen
Von Kaspersky im Forum SoftwareAntworten: 7Letzter Beitrag: 13.08.2012, 22:11 -
[Facebook] Kommentare werden nicht angezeigt
Von !lkay im Forum Internet und TechnikAntworten: 9Letzter Beitrag: 10.06.2012, 22:23 -
[Facebook] Wie Kommentare deaktivieren?
Von Headstyle im Forum Internet und TechnikAntworten: 2Letzter Beitrag: 05.03.2012, 16:01 -
Auf eine Zahl prüfen
Von KScript im Forum HochsprachenAntworten: 8Letzter Beitrag: 14.02.2011, 20:14
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.