Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak oceniany jest operator OR wyrażenia regularnego

Jeśli interesuje Cię, co się stanie, gdy użyjesz | operator alternatywny , odpowiedź jest prosta:silnik regex przetwarza wyrażenie i ciąg wejściowy z lewej do w prawo .

Biorąc za przykład wzór, ^.{8}|.{12}$|.{4} zaczyna sprawdzać ciąg wejściowy od lewej i sprawdza, czy jest ^.{8} - pierwsze 8 znaków. Znajduje je i to pasuje. Następnie przechodzi dalej i znajduje ostatnie 12 znaków za pomocą .{12}$ i znowu jest mecz. Następnie dopasowywane są dowolne 4-znakowe ciągi.

Debuggex Demo

Następnie masz ^.{8}|.{4}|.{12}$ . Wyrażenie jest ponownie analizowane od lewej do prawej, najpierw dopasowywanych jest 8 pierwszych znaków, ale następnie dopasowane zostaną tylko 4-znakowe sekwencje, .{12} nigdy się nie uruchomi, ponieważ będzie .{4} mecze!

Debuggex Demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pomieszane dane SQL — wybierz w instrukcji aktualizacji

  2. Jak określić numer portu w parametrach połączenia programu SQL Server?

  3. Zakres zmiennych, które są zdefiniowane w ramach bloku while w procedurach składowanych - SQL Server

  4. Jak utworzyć procedurę składowaną w SQL Server

  5. Jak zdobyć miesiąc temu od dzisiaj w SQL Server 2008?