Jak zdefiniować lokalizacje za pomocą formuły REGEX?

Instrukcje
Regex (Regular Expressions) to potężne narzędzie do wyszukiwania i manipulacji tekstem. Poniżej znajdziesz krótką instrukcję jak stworzyć prostą formułę REGEX, która będzie dopasowywać nazwy lokalizacji według określonego wzoru. Wikipedia.
  1. Określenie wielkości sektora
    • W zależności od fizycznego rozmiaru, możemy określić jedną halę lub piętro jako sektor, lub możemy wydzielić zakres alejek w każdej hali osobno.
    • Każdy sektory będzie miał osobną formułę, według której zostaną przypisane lokalicje.
    • Określenie sektorów pozwala na szybszą realizację zamówień, których produkty leżą w jednym sektorze. Jednak należy pamiętać, że zawsze będą zamówienia, których produkty będą leżeć w różnych sektorach.
  2. Określenie wzoru sektora
    • Aby zastosować wyrażenia regularne, nazwy lokalizacji muszą być zgodne z dowolnym wzorcem.
    • Załóżmy, że lokalizacja składa się z oznaczenia hali, alejki, numeru regału i numeru półki, oddzielonych ukośnikami ("/"). Przykład: "H1/AE/10/C".
    • Oznaczenie hali: Literka "H" i cyfra (np. "H1").
    • Oznaczenie alejki: Literka (np. "A").
    • Nazwy półek są mało istotne, ponieważ regały mogą być za małe..
  3. Budowanie formuły
    • Formuła powinna się zaczynać od znaczka ^ aby doapsować wzór do początku nazwy lokalizacji.
    • Korzystamy z formuły H[0-9] aby dopasować dowolną halę, lub wpisujemy konkretną halę (H1, H2, H3).
    • Używamy separatora / aby oznaczyć kolejny element nazwy.
    • Aby oznaczyć jedną alejkę, wpisujemy jej literę (A, B, C, itd.). Aby dopasować dowolną alejkę, wpisujemy [A-Z], a jeżeli chcemy wybrać tylko część alejek, wpisujemy np. [A-G], co oznacza, że w tym sektorze będą alejki od A do G.
    • Wpisujemy nazwę sektora, aby można było go łatwo rozpoznać.
  4. Przykładowe wzory
    • Jeżeli chcemy ustawić każdą halę jako osobny sektor, ustawiamy formuły ^H1, ^H2, ^H3, itd.
    • Jeżeli chcemy ustawić sektor jako alejki od A do G, H do S i T do Z niezależnie od hali, możemy to zrobić wzorami ^H[0-9]/[A-G], ^H[0-9]/[H-S] oraz ^H[0-9]/[T-Z]
    • Jeżeli chcemy ustawić halę pierwszą jako sektor oraz dwie połowy drugiej hali jako dwa sekory, możemy to zrobić następująymi wzorami: ^H1, ^H2/[A-M] oraz ^H2/[N-Z]
  5. Uwagi
    • REGEX jest czuły na wielkość liter, dlatego upewnij się, że oznaczenia alejki i półki są wielkimi literami.
    • REGEX jest czuły na konkretne znaki, więc przypadkowe znaki jak np. spacja, tabulator lub błędny ukośnik spowoduje, że dopasowanie nie będzie możliwe.
    • Jeżeli oznaczenia są dłuższe, możesz używać kwantyfikatorów tj
      • * (gwiazdka): Dopasowuje 0 lub więcej wystąpień poprzedniego elementu
      • ? (znak zapytania): Dopasowuje 0 lub jeden wystąpień poprzedniego elementu
      • + (plus): Dopasowuje 1 lub wiecej wystąpień poprzedniego elementu
      • {x} (lub {x,y}): Dopasowuje określona ilość wystąpień poprzedniego elementu