sql >> Database teknologi >  >> RDS >> Oracle

Oracle regex - starter ikke med og slutter ikke med

At teste for ikke-match som denne kan blive kompliceret, så jeg vil anbefale at teste for et match og negere resultatet.

Starter ikke med abc :

WHERE NOT REGEXP_LIKE(myString, '^abc')

Ender ikke med abc :

WHERE NOT REGEXP_LIKE(myString, 'abc$')

Med hensyn til hvorfor det ikke virker, som @DavidKnipe siger i sit svar:det er fordi du bruger karakterklasser. Regex ^[^(abc)] analyserer sådan her:

  • Den første ^ siger "anker til begyndelsen af ​​strengen"
  • [^(abc)] er en karakterklasse, der siger "match enhver enkelt tegn, så længe det ikke er ( eller a eller b eller c eller ) ".


  1. Hvad er det maksimalt tilladte antal joinforbindelser i SQL Server 2008?

  2. Django og PostgreSQL sekvens til primær nøgle autoincrement

  3. Oracle rownum adfærd med mod funktion

  4. Forståelse af gentag loggruppe vs fil vs medlem