Jak v Mergadu vyhledávat case senzitivně, tj. aby záleželo na velikosti písmen

U tvorby výběrů a pravidel se v Mergadu nerozlišuje velikost písmen, hledání je tzv. case insenzitivní, tj. necitlivé na velikost písmen. Když budu hledat velké písmenko A, najde se mi klidně i produkt s malým a. :thinking:

Pozn.: jak je to s názvy elementů a citlivostí na velikost písmen popsal David zde: MERGADO 2 - Citlivost na velikost písmen (case sensitivita)
V tomto příspěvku však nepůjde o názvy elementů, ale o vyhledávání v hodnotách elementů v rámci výběrů a pravidel.

Pokud potřebujete vyhledávat case senzitivně, tj. aby záleželo na velikosti písmen, existuje na to řešení pomocí regulárních výrazů, resp. pomocí tzv. REGEX FLAGS, které upravují chování toho, jak se budou regulární výrazy vyhodnocovat.

Výběry citlivé na velikost písmen

U tvorby výběrů se přepněte do MQL a v rámci hodnoty nějaké podmínky výběru použijte:
(?-i:…text nebo regulární výraz…)

Celá podmínka potom může vypadat například takto:

PRODUCTNAME ~ "(?-i:hrnek)"

→ což najde produkty, které mají v názvu malými písmeny slovo hrnek.


Další příklad s konkrétním regulárním výrazem:

PRODUCTNAME ~ "(?-i:^[A-Z]{2})"

→ najde produkty, které mají na začátku PRODUCTNAME první dvě písmena velká.

Pravidla citlivá na velikost písmen

Obdobně to funguje v pravidlech, např. u typu pravidla “Najít a nahradit”.

  • Zatrhněte checkbox, že chcete hledat jako regulární výraz
  • do pole najít zadejte regulární výraz obalený do syntaxe jak je uvedeno výše.

Příklad jak odstranit text psaný VELKÝMI PÍSMENY z názvu produktu:
v poli Najít zadáme: (?-i:[A-Z]{2,}) a pole Nahradit necháme prázdné.

U sledovaného produktu můžeme funkci pravidla zkontrolovat:

:+1: :wink:

4 Likes