Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 16

Thema: PHP Wordfunktion?

  1. #1
    Registrierter Benutzer
    Registriert seit
    13.10.2003
    Beiträge
    22

    PHP Wordfunktion?

    Hi,

    ich suche nach einer Funktion in PHP die mir eine gewisses Wort ausgibt. Also sagen wir ich habe den String

    Hallo mein Name ist Damogran

    dann möchte ich nur das fünfte Worte haben (Damogran).

    Unter REXX gibt es da einfach die Funktion WORD, aber leider nicht in PHP ^^

    Gruß
    Damo

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Mit solchen Funktionen kann man dich unter PHP zuschmeissen
    Siehe Regexp und alle String Funktionen http://www.php.net/manual/de/ref.strings.php
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  3. #3
    Registrierter Benutzer
    Registriert seit
    13.10.2003
    Beiträge
    22
    danke

    gruß damo

  4. #4
    Registrierter Benutzer Avatar von Romanday
    Registriert seit
    03.02.2004
    Beiträge
    829
    Du kannst dein Problem auch flexibler mit einem Array lösen.
    Abriss, bzw. die Sprengung des World Trade Centers
    WDR Dokumentation
    Doku + DT Untertitel
    Weitere Infos - Terrorstorm

  5. #5
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Zitat Zitat von Romanday
    Du kannst dein Problem auch flexibler mit einem Array lösen.

    PHP-Code:
    echo ereg_replace".*(Damogran).*""\\1""Hallo mein Name ist Damogran" ); 
    Noch mehr Beispiele
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  6. #6
    Registrierter Benutzer Avatar von Romanday
    Registriert seit
    03.02.2004
    Beiträge
    829
    Zitat Zitat von undefined

    PHP-Code:
    echo ereg_replace".*(Damogran).*""\\1""Hallo mein Name ist Damogran" ); 
    Noch mehr Beispiele
    Ja, das Array Beispiel fehlt noch.
    Abriss, bzw. die Sprengung des World Trade Centers
    WDR Dokumentation
    Doku + DT Untertitel
    Weitere Infos - Terrorstorm

  7. #7
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Es sollte eher eine Anspielung auf flexibler sein
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  8. #8
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    PHP-Code:
    $arr split(" ""Hallo mein Name ist Damogran");
    print_r($arr);
    /* 
    Array
    (
        [0] => Hallo
        [1] => mein
        [2] => Name
        [3] => ist
        [4] => Damogran
    )
    */ 

  9. #9
    Registrierter Benutzer Avatar von Romanday
    Registriert seit
    03.02.2004
    Beiträge
    829
    Zitat Zitat von undefined
    Es sollte eher eine Anspielung auf flexibler sein
    Ne, ich hatte bloß im ersten Moment auch ein REGEX im Kopf gehabt.

    PHP-Code:
    $a=explode(' ',$s); 
    Abriss, bzw. die Sprengung des World Trade Centers
    WDR Dokumentation
    Doku + DT Untertitel
    Weitere Infos - Terrorstorm

  10. #10
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Ihr werdet doch nicht bei einem Text von Din A4 Größe mit explode() oder split() Arbeiten? Das meinte ich mit elegant.
    Dann würde euer Code in Wirklichkeit in etwa so aussehen.
    PHP-Code:
    $text strip_tags$text ); ## HTML Elemente entfernen die an Wortgrenzen stossen.
    $arr split(" "$text); ## Splitten
    if ( is_array$arr ) ) {
      
    $arr array_unique$arr ); ## Doppelter Müll kann weg
      
    foreach ( $arr AS $v ) {
         
    $v trim$v );
         if ( 
    $v == "Damogran" ) {
            echo 
    $v;
            break;
         }
      }

    Geändert von undefined (03-02-2006 um 09:12 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  11. #11
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    PS: Wenn man mit Arrays Arbeiten möchte und vermeiden will das Punkte oder andere an Wortgrenzen stoßenden Zeichen nicht mit geliefert werden sollen ist word_count die Bessere Wahl.
    PHP-Code:
    $str "Hallo mein Name ist Damogran.";
    $arr str_word_count$str);
    var_dump"<pre>"$arr "</pre>" ); 
    Wobei auch hier wieder z.B. Bindestriche und Downspaces nicht berücksichtigt werden
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  12. #12
    Registrierter Benutzer Avatar von Romanday
    Registriert seit
    03.02.2004
    Beiträge
    829
    Zitat Zitat von undefined
    Ihr werdet doch nicht bei einem Text von Din A4 Größe mit explode() oder split() Arbeiten? Das meinte ich mit elegant.
    Dann würde euer Code in Wirklichkeit in etwa so aussehen.
    PHP-Code:
    $text strip_tags$text ); ## HTML Elemente entfernen die an Wortgrenzen stossen.
    $arr split(" "$text); ## Splitten
    if ( is_array$arr ) ) {
      
    $arr array_unique$arr ); ## Doppelter Müll kann weg
      
    foreach ( $arr AS $v ) {
         
    $v trim$v );
         if ( 
    $v == "Damogran" ) {
            echo 
    $v;
            break;
         }
      }

    Ja das geht,

    oder so:

    PHP-Code:
    echo $a[4]; 
    Abriss, bzw. die Sprengung des World Trade Centers
    WDR Dokumentation
    Doku + DT Untertitel
    Weitere Infos - Terrorstorm

  13. #13
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Und woher weist du wo das Wort enthalten ist?
    Ich würde Arrays nur zum Sortieren verwenden. Aber nicht wie in seiner Frage zu Wortfindung.
    Zu viel Code - zu Anfällig - zu hoher Speicherbedarf

    So etwas bekommst du mit einem Regexp Wesentlich schneller und sicherer hin.

    Es gab für diese Geschichte auch mal eine Extension - das ist leider eingeschlaffen.
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  14. #14
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    Zitat Zitat von undefined
    Ihr werdet doch nicht bei einem Text von Din A4 Größe mit explode() oder split() Arbeiten? Das meinte ich mit elegant.
    Dann würde euer Code in Wirklichkeit in etwa so aussehen.
    PHP-Code:
    $text strip_tags$text ); ## HTML Elemente entfernen die an Wortgrenzen stossen.
    $arr split(" "$text); ## Splitten
    if ( is_array$arr ) ) {
      
    $arr array_unique$arr ); ## Doppelter Müll kann weg
      
    foreach ( $arr AS $v ) {
         
    $v trim$v );
         if ( 
    $v == "Damogran" ) {
            echo 
    $v;
            break;
         }
      }

    Nein,
    PHP-Code:
    $arr split(" "$text);
    if(
    is_numeric($v array_search('Damogran'$array)))
      echo 
    $arr[$v]; 
    Geändert von Giuly (03-02-2006 um 13:42 Uhr)

  15. #15
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Sind immernoch mehr Zeilen PS: Schreibe deinen Code mal in PHP 5.1 und ein schraube das Error Reporting hoch
    Es fehlen auch jegliche Kontrollen für Wortgrenzen in deinem Code
    Geändert von undefined (03-02-2006 um 14:09 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •