Announcement

Collapse
No announcement yet.

String aus Varchar feld via Trigger zerlegen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • String aus Varchar feld via Trigger zerlegen

    Hallo,

    ich habe folgendes Problem mit einer Funktion die ich scheiben will. Bei einem Insert soll ein Trigger die eingetragen Daten eines Varchar2 - Felds in alle Wörter zerlegen und alle Wörter in eine eigene Tabelle einfügen. Wie kann ich den ganzen String aus dem Varchar2 feld durchsuchen ?

    Gruß
    Volker

  • #2
    Hallo Volker,

    <hr size="1" noshade/>
    <cite>Wie kann ich den ganzen String aus dem Varchar2 feld durchsuchen ?</cite>
    <hr size="1" noshade/>
    Am besten in einer Schleife mit INSTR() nach Leerzeichen als Trenner suchen und dann mit SUBSTR() die Wörter einzeln extrahieren. Bsp:
    declare
    vTest varchar2(512) default 'ich habe folgendes Problem mit einer Funktion';
    vWord varchar2(512);
    iPos pls_integer;
    iLPos pls_integer default 1;
    iLen pls_integer;
    iCount pls_integer default 1;
    begin
    loop
    iPos := instr(vTest, ' ', 1, iCount);
    if iPos = 0 then
    iPos := length(vTest) + 1;
    end if;
    vWord := ltrim(substr(vTest, iLPos, iPos - iLPos));
    dbms_output.put_line(vWord);
    iLPos := iPos + 1;
    iCount := iCount + 1;
    exit when iPos = length(vTest) + 1;
    end loop;
    end;
    Dieses Script geht von ' ' als Wordtrenner aus und entfernt zusätzliche Leerzeichen (mit LTRIM()) aus den extrahierten Wörtern.

    Gruß Fal
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment

    Working...
    X