Podpořte nás!

Like Operator [VBA]

Použijte operátor Like k porovnání řetězce podle zadané masky.

Ikona upozornění

Tato konstanta, funkce nebo objekt se povoluje příkazem Option VBASupport 1, který je umístěn v modulu před spustitelným programem.


Syntaxe:


Result = String1 Like String_pattern

Výsledek: libovolná logická hodnota, která vyjadřuje výsledek porovnání dvou řetězců.

Řetězec1: (povinné) řetězec, který chcete porovnat s String_pattern.

String_pattern: (povinné) libovolný řetězcový výraz odpovídající pravidlům pro porovnávání podle masky.

Návratový typ:

Boolean

Pravidla pro porovnávání podle masky

Operátor Like obsahuje integrované porovnávání podle masky, díky čemuž je účinným nástrojem pro porovnávání řetězců. Při porovnávání lze používat zástupné znaky, seznamy znaků nebo rozsahy znaků, a to samostatně i ve vzájemné kombinaci. Následující tabulka uvádí znaky povolené v maskách a popisuje, čemu odpovídají:

Ikona poznámky

The built-in pattern matching is not the same as the regular expressions used in other LibreOfficeDev modules.


Characters in pattern

Matches in string

?

Any single character.

*

Zero or more characters.

#

Libovolná jedna číslice (0–9).

[ character_list ]

Libovolný jeden znak ze seznamu character_list. Například libovolný znak z [zTrwqJkl] nebo z [A-P].

[ !character_list ]

Libovolný jeden znak, který není uveden v character_list.


Skupina jednoho nebo více znaků musí být uzavřena do hranatých závorek ([]) a může odpovídat libovolnému jednomu znaku v řetězci. Může obsahovat téměř libovolné znaky, včetně číslic. K určení rozsahu znaků použijte spojovník (-), například [a-z], kde spojovník odděluje dolní a horní mez rozsahu.

Příklad:


Option VBASupport 1
Sub ExampleLike
    Print "abc" Like "a*c"    ' Returns True.
    Print "badmington" Like "bad*"    ' Returns True.
    Print "M" Like "[A-E]"    ' Returns False.
    Print "M" Like "[!A-Z]"    ' Returns False.
    Print "Phone:12345678" Like "Phone:1234####"    ' Returns True.
End Sub