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. |