Podpořte nás!

Operátor Like [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

Porovnávání vzorů není stejné jako regulární výrazy používané v jiných modulech LibreOfficeDev.


Znaky ve vzoru

Shody v řetězci

?

Libovolný jednotlivý znak.

*

Nula nebo více znaků.

#

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