Ankündigung

Einklappen
Keine Ankündigung bisher.

[REGEX] Suchergebnis highlighten

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gast-Avatar
    Ein Gast erstellte das Thema [REGEX] Suchergebnis highlighten.

    [REGEX] Suchergebnis highlighten

    Hallo,
    ich schreib grad an nem kleinen Forum und möchte nachdem man auf ein Ergebnis der Suche geklickt hat, dass die Suchbegriffe markiert werden.
    Bei einfach Konstruktionen zerlegt es mit immer gleich noch den HTML bzw. BBCode.

    Das ist mein aktuelles Ergebnis, sollte in der Theorie auch funktionieren. Bloß an der Praxis scheitert.

    Code:
    $text = eregi_replace("/(?<!\\<[^\\>]*)".$arr[$x]."(?<![^\\<]*\\> )/", "<font color=#ffcc00>\\1</font>", $text);
    Jemannt ne Idee

    MfG
    mnhg[/code]

  • Gast-Avatar
    Ein Gast antwortete
    so wie du das meinst mein ich es nicht...

    wenn du es da ersetzt kann st immer nur nen festen String angeben, also wird aus abc ABC Abc usw. immer nur eine der Kombinationen

    Einen Kommentar schreiben:


  • Ashergul
    antwortet
    str_ireplace() <-- case sensitive

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Könntest du mir ne Expression zusammenbasteln, ist nicht grad mein Spezialgebiet in php

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    hmm ...
    weiß jetzt leider auch nicht woran es liegen könnte, aber ich hab noch nen tipp:
    benutz die PCRE statt die POSIX.
    die sind deutlich schneller und bieten mehr möglichkeiten.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Das ist dann aber nicht case unsensetive, und auch die tags die eventuell drin sind werden zerlegt

    Einen Kommentar schreiben:


  • imported_Ben
    antwortet
    also suchbegriffe markieren ..
    http://www.php-resource.de/forum/sho...?threadid=5186

    sollte mit str_replace() realisiert werden.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    $arr[$x] ist der suchbegriff..

    aber funktioniert auch mit den neuen klammern nicht

    Code:
    $text = eregi_replace("/(?<!\\<[^\\>]*)(".$arr[$x].")(?<![^\\<]*\\> )/", "<font color=#ffcc00>\\2</font>", $text);

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    zwei sachen
    1. was is $arr[$x]
    und 2. \\1 wäre dann das?<!\\<[^\\>]*)
    ich weiß ja nicht ob das beabsichtig ist aber für mich siehts falsch aus

    Einen Kommentar schreiben:

Lädt...
X