m@rc-lenzin

Wenn etwas schief geht, dann freu dich. Das sind die Geschichten die dir in Erinnerung bleiben werden

Oracle IP-Adresse Validieren

DECLARE
  l_256            VARCHAR2(100) := '([1-9]|[1-9][0-9]|[1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-6])';
  l_regular_expr   VARCHAR2(500) := '^([ ]{1,2}|)'||l_256||'\.([ ]|)'||l_256||'\.([ ]|)'||l_256||'\.([ ]|)'||l_256;
  TYPE list_type IS VARRAY(10) OF VARCHAR2(20);
  v_list LIST_TYPE := LIST_TYPE();   
BEGIN
  v_list.EXTEND(10);
  -- v_list(1) :=  '123.123.123.123';
  v_list(1) :=  '&IP-Adresse';
  -- REGEXP_LIKE ANWEISUNG --
  ---------------------------
  FOR i IN 1..v_list.LAST LOOP
    IF REGEXP_LIKE(v_list(i), l_regular_expr) THEN
      DBMS_OUTPUT.put_line('OK IP Address    : ' || v_list(i));
    END IF;
    IF NOT REGEXP_LIKE(v_list(i), l_regular_expr) THEN
      DBMS_OUTPUT.put_line('BBoese IP Address: ' || v_list(i));
    END IF;
  END LOOP;
END;
/

 

Oder per SQL-Abfrage

select  *
  from  ip_table
  where regexp_like(ip, '^([1-9]{1}|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([1-9]{1}|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([1-9]{1}|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([1-9]{1}|[0-9]{2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$')
 

Weiter Beitrag

Zurück Beitrag

© 2025 m@rc-lenzin

Thema von Anders Norén