StrExpression regex: Porovnání verzí
(→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. Jedná se o technické omezení na výstupu příkazu, ale | + | <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 nejde o 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:35
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 nejde o 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.