CAD programy 4M
(wcmatch string pattern)
Funkce wcmatch vyhledá interní řetězcové shody.
Tato funkce vyhledá interní řetězcové shody. Můžete zjistit, zda je nalezen určitý řetězec, nebo shoda s jiným řetězcem.
Například pokud byste měli proměnnou řetězce nazvanou MYVAR obsahující řetězec "SUPERCALIFRAGILISTIC123 \ ##" a chcete zjistit, zda jsou znaky "FRAG" kdekoli v řetězci, můžete použít funkci wcmatch takto:
(wcmatch MYVAR "*FRAG*")
Je-li nalezena shoda, wcmatch vrátí T. Pokud není nalezena žádná shoda, vrátí se nil. Funkce wcmatch rozlišuje velká a malá písmena. Chcete-li najít nějakou shodu, měli byste v případě potřeby, pomocí strcrcase vše změnit na velká písmena.
Pro wcmatch můžete použít několik zástupných znaků:
PŘÍKLAD:
Tato funkce vyhledá interní řetězcové shody. Můžete zjistit, zda je nalezen určitý řetězec, nebo shoda s jiným řetězcem.
Například pokud byste měli proměnnou řetězce nazvanou MYVAR obsahující řetězec "SUPERCALIFRAGILISTIC123 \ ##" a chcete zjistit, zda jsou znaky "FRAG" kdekoli v řetězci, můžete použít funkci wcmatch takto:
(wcmatch MYVAR "*FRAG*")
Je-li nalezena shoda, wcmatch vrátí T. Pokud není nalezena žádná shoda, vrátí se nil. Funkce wcmatch rozlišuje velká a malá písmena. Chcete-li najít nějakou shodu, měli byste v případě potřeby, pomocí strcrcase vše změnit na velká písmena.
Pro wcmatch můžete použít několik zástupných znaků:
Wildcard | Definition |
---|---|
~ | (tilde) Pattern not found in string. |
* | Standard wildcard; can be used anywhere. |
? | Matches for a space held by a character or number; number of question marks (?) must exactly match number of characters or numbers in the string. |
# | (pound) Matches any single number. |
@@ | Matches any single character; may not be a number. |
. | (period) Matches any single non-alphanumeric character. |
(space) Matches one or more spaces. | |
[ ] | Matches for any of the characters enclosed in the brackets. |
[~ ] | True only if there are extra characters not included in the brackets. |
[ - ] | (hyphen) Searches within a predefined range pattern. |
, | (comma) The "or" option. |
' | (reverse quote) Read next character literally; use for special characters. |
PŘÍKLAD:
Kód | Vrací | Comments |
---|---|---|
(setq N "11234 TROPICANA AVE.#@") | ||
|
||
(wcmatch N "~345") | T | "345" is not found in the pattern. |
(wcmatch N "*opic*" ) | T | "opic" is found with anything before and after. |
(wcmatch N "?????????????????????") | T | There are 21 characters, numbers and spaces in this string. |
(wmatch N "#####*") | T | Matches 5 digits, followed by anything. |