Bestimmten Ausdruck identifizieren
Carl
- php
Hi
ich such nach ner möglichkeit, dass enn jemand daten in ein textteld kopiert, diese dann vom script analysiert werden und ausdrücke einer bestimmten sorte sortiert werden.
also zum beispiel:
123:4 hallo 1234
Dann soll 123:4 als eigener ausdruck angesehen werden, hallo als eigener und 1234 als eigener. Wie kann ich das machen?
Hallo,
123:4 hallo 1234
Dann soll 123:4 als eigener ausdruck angesehen werden, hallo als eigener und 1234 als eigener. Wie kann ich das machen?
http://www.php.net/manual/en/function.explode.php
Gruß,
dimde
Hi
aber wie kann ich das anwenden, wenn ich nicht zu hundert prozent weiß, was der user angibt, sondern nur die "form" in der er es eingibt.
also der user kann eingebn:
123:4 hallo 1234
123:5 hi 1299
11:5 tag 623
und ich möchte immer, dass die ausdrücke erkannt werden.
Hoffe mal, ich drücke mich hier halbwegs verständlich aus :/
Gruss
Carl
Hallo Carl,
dimde hat's Dir doch klar aufgezeigt.
aber wie kann ich das anwenden, wenn ich nicht zu hundert prozent weiß, was der user angibt, sondern nur die "form" in der er es eingibt.
<cite>
Beispiel 1. explode()-Beispiel:
$pizza = "Teil1 Teil2 Teil3 Teil4 Teil5 Teil6";
$pieces = explode (" ", $pizza);
</cite>
also der user kann eingebn:
123:4 hallo 1234
123:5 hi 1299
11:5 tag 623
$ausdruecke = explode(" ", $eingabe);
trennt stets am Leerzeichen ...
Und $ausdruecke ist ein Array, durch das Du durchlaufen kannst, so mit for und foreach, vielleicht auch mit while ;-)
Gruss,
Vinzenz
Hallo,
also der user kann eingebn:
123:4 hallo 1234
Also wird daraus:
123:4
hallo
1234
123:5 hi 1299
...daraus:
123:5
hi
1299
11:5 tag 623
...und daraus:
11:5
tag
623
(Die einzelne Zeile könnte man jetzt als ein einzelnes Element eines
Arrays verstehen, oder so ähnlich...)
Was genau hast du jetzt an der Funktion "explode" nicht verstanden,
auf die dich dumde verlinkt hat? Genau das macht diese doch:
"array explode ( string separator, string string [, int limit])
Returns an array of strings, each of which is a substring of string
formed by splitting it on boundaries formed by the string separator."
Wenn du als folgendes schreibst:
explode(" ", "Dies ist ein Test")
liefert explode ein Array zurück, das aus den Elementen "Dies",
"ist", "ein" und "Test" besteht. Im obigen Aufruf ist "Dies ist ein
Test" der zu bearbeitende String und " " (also das Leerzeichen) das
Trennzeichen, an dem der zu bearbeitende String "aufgeschnitten" wird.
Jetzt klarer? Wenn nein: Fragen! Aber bitte etwas konkreter.
Gruß
Slyh
Hallo Slyh,
Was genau hast du jetzt an der Funktion "explode" nicht verstanden,
auf die dich dumde verlinkt hat?
DUMde, soso - Ich hoffe, das war jetzt keine Anspielung :)
Es heißt d_*I*_mde mit I wie Isidor, nicht U wie in DAU ;)
Außerdem ist der Nick eine Abkürzung für "Das Ist Mir Doch Egal" - du
müsstest doch sehr genau wissen, wie der Name entstanden ist *g*
Gruß,
dimde
Hi
ja jetzt wirds etwas klarer. Geb zu, ich hatte das ganze vorher nicht komplett durchdacht und zu überhastet nochmal nachgefragt.
Aber was ich immernoch nicht verstehe:
Ich habe beispielsweise dieses Formular:
<form action="dokument.php" method="post">
<textarea name="daten" cols="30" rows="10"></textarea>
<br><input type="SUBMIT" name="send">
</form>
Wie füge ich dann die daten in die explode-funktion ein?
ich habs jetzt mal testhalber so versucht.
<?
if($action == "send"){
$koord = explode (" ", $angreifer);
echo "$koord";
}
?>
aber klappen tuts leider nicht wirklich :(
Gruss
Carl
Hallo Carl,
<form action="dokument.php" method="post">
<textarea name="daten" cols="30" rows="10"></textarea>
<br><input type="SUBMIT" name="send">
</form>Wie füge ich dann die daten in die explode-funktion ein?
<?php[1]
// prüfen, ob das Forumlar abgeschickt und Text eingegeben wurde
// (da das Formular mittels "post" verschickt wurde, stehen die
// Formulardaten in dem superglobalen Array $_POST[2]
if (isset($_POST) && $_POST["daten"]) {
// den Text der Textarea in die einzelnen Wörter aufteilen
$words = array();
$words = explode(" ", $_POST["daten"]);
// den Array $words durchlaufen und die einzelnen Elemente
// (die Wörter) ausgeben
while (list($key, $word) = each($words)) {
echo "Element(Wort) Nr. ".$key.": ".$word."<br />\n";
}
}
?>
[1] Schreibe lieber "<?php" statt "<?", dann kriegst Du keine Probleme,
falls auf einem Server mal short_tags ausgeschaltet sind, oder Du
XML und PHP mischst.
[2] http://www.php.net/manual/en/language.variables.predefined.php
Gruß,
dimde
hi
das klappt danke.
Jetzt hab ich aber noch ne Frage.
Also, der User gibt jetzt sowas ein:
153 hallo 139
154 hi 465
und jetzt möchte ich, dass es so in etwa ausgegeben wird:
1: 153
154
2: hallo
hi
3: 139
465