StrExpression regex: Porovnání verzí

Z Wiki
Přejít na: navigace, hledání
(2. Další specifika)
(2. Další specifika)
Řádek 25: Řádek 25:
 
<code>.</code> zahrnuje i znaky pro konec řádku (tzv. "DOTALL", nebo "single line" flag)
 
<code>.</code> zahrnuje i znaky pro konec řádku (tzv. "DOTALL", nebo "single line" flag)
  
<code>Error: 125: Invalid expression</code> příkazu StrExpression nemusí nutně znamenat, že máme chybu v samotném výrazu. Chyba se může ukázat i v případě, kdy používáme zachytávací skupiny (capture groups), zatímco jsme v textu nenalezli hledaný řetězec.
+
<code>Error: 125: Invalid expression</code> příkazu StrExpression nemusí nutně znamenat, že máme chybu v samotném výrazu. Chyba se může ukázat i v případě, kdy používáme zachytávací skupiny (capture groups), zatímco jsme v textu nenalezli hledaný řetězec. Jedná se o technické omezení na výstupu příkazu, ale nejedná se bug. Pro zamezení pádu testu vložte StrExpression příkaz do příkazu Try, nebo nejprve hledaný řetězec vyhledejte bez zachytávací skupiny a potom za pomocí příkazu If přístupte k samotnému získání řetězce v prohledávaném textu.

Verze z 26. 8. 2025, 16:34

Práce s regex v příkazu StrExpression má určitá specifika.


1. Escape sekvence

1.1. "\r" a "\n" sekvence

Pokud si přejeme v regex výrazu použít escape sekvence pro carriage return a line feed, je třeba použít dvojité zpětné lomítko takto:

\\r

\\n

2. Další specifika

\s nezahrnuje znaky pro konec řádku

. zahrnuje i znaky pro konec řádku (tzv. "DOTALL", nebo "single line" flag)

Error: 125: Invalid expression příkazu StrExpression nemusí nutně znamenat, že máme chybu v samotném výrazu. Chyba se může ukázat i v případě, kdy používáme zachytávací skupiny (capture groups), zatímco jsme v textu nenalezli hledaný řetězec. Jedná se o technické omezení na výstupu příkazu, ale nejedná se bug. Pro zamezení pádu testu vložte StrExpression příkaz do příkazu Try, nebo nejprve hledaný řetězec vyhledejte bez zachytávací skupiny a potom za pomocí příkazu If přístupte k samotnému získání řetězce v prohledávaném textu.