ABAPFIND_ITAB - FIND ITAB

Vendor Master (General Section)   PERFORM Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.

FIND IN TABLE itab

Kurzreferenz



Syntax

FIND [{FIRST OCCURRENCE}|{ALL OCCURRENCES} OF] pattern
  IN TABLE itab [table_range]
  [IN {CHARACTER|BYTE} MODE]
  [find_options]
.

Wirkung

Die interne Tabelle itab wird zeilenweise nach den durch patternbestimmten Zeichen- bzw. Bytefolgen durchsucht. Bei itab handelt es sich um einefunktionale Operandenposition.

itab muss eine Standardtabelle ohne sekundäre Tabellenschlüssel sein. Die Zeilen der Tabelle müssen je nach ZusatzCHARACTER bzw. BYTE MODE entweder zeichen- oder byteartig sein. Zeichen- oder Bytefolgen, die mehrere Tabellenzeilen überspannen, werden nicht gefunden.

Mit dem Zusatz table_rangekann der Suchbereich auf der Tabelle eingeschränkt werden. Die sonstigen Zusätze habenfür die Suche in den einzelnen Tabellenzeilen im Wesentlichen die gleiche Bedeutung wie bei derAnweisung FIND fürelementare Zeichen- bzw. Byteketten, wobei hier ein weiterer Zusatz MATCHLINE auch die Zeilennummer einer Fundstelle zurück gibt.

Die Suche wird beendet, wenn das Suchmuster zum ersten Mal bzw. wenn alle Suchmuster im Suchbereichgefunden wurden oder das Ende des Suchbereichs erreicht wird. Das Suchergebnis wird durch das Setzen von sy-subrc mitgeteilt.

Bei der Zeichenkettenverarbeitung werden bei Zeilentypen fester Länge die schließenden Leerzeichen berücksichtigt.

Hinweis

Eine Suche mit FIND IN TABLE ist performanter, als mit LOOPeine Schleife auszuführen und mit FIND in den einzelnen Zeilen zu suchen.

Systemfelder

sy-subrcBedeutung
0Das Suchmuster wurde mindestens einmal im Suchbereich gefunden.
4Das Suchmuster wurde nicht im Suchbereich gefunden.

Die Werte von sy-tabix und sy-fdpos werden nicht verändert.

Beispiel

Suchen aller Vorkommen von Donalds Neffen in einer internen Tabelle und Speichern der Ergebnisse in der Tabelle results.

DATA: itab    TYPE TABLE OF string,
      results TYPE match_result_tab.

...

FIND ALL OCCURRENCES OF REGEX '\b(Huey|Dewey|Louie)\b'
  IN TABLE itab
  RESPECTING CASE
  RESULTS results.

Ausnahmen

Behandelbare Ausnahmen

CX_SY_RANGE_OUT_OF_BOUNDS

  • Ursache: Unzulässige Offset- oder Längenangabe im Zusatz SECTION OF.
    Laufzeitfehler: REFI_WRONG_SECTION (abfangbar)

CX_SY_TAB_RANGE_OUT_OF_BOUNDS

  • Ursache: Unzulässige Offset- oder Längenangabe im Zusatz FROM ... OFFSET ... TO OFFSET.
    Laufzeitfehler: INVALID_TABLE_RANGE

CX_SY_INVALID_REGEX

  • Ursache: Unzulässiger Ausdruck hinter dem Zusatz REGEX.
    Laufzeitfehler: INVALID_REGEX







TXBHW - Original Tax Base Amount in Local Currency   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 5561 Date: 20120526 Time: 200838     triton ( 164 ms )