Difference between revisions of "Template:LSL Regular Expressions"
Jump to navigation
Jump to search
Rider Linden (talk | contribs) |
Rider Linden (talk | contribs) |
||
(One intermediate revision by the same user not shown) | |||
Line 14: | Line 14: | ||
| Matches the beginning of the string. | | Matches the beginning of the string. | ||
| | | | ||
|- | |||
! $ | |||
| Matches the end of the string. | |||
| | |||
|- | |||
! colspan=3|Expression Prefixes | |||
|- | |||
! (?i) | |||
| Makes search string case insensitive. | |||
| This must be the first thing that appears in the search string. | |||
"(?i)apple" will match "apple", "APPLE", "ApPlE", and any other combination of upper and lower case characters. | |||
|- | |- | ||
! $ | ! $ | ||
Line 154: | Line 166: | ||
! \B | ! \B | ||
| Not a word boundary. | | Not a word boundary. | ||
|- style="text-align:right;" | |||
| colspan=3 | | |||
'''*Note*''' LSL uses '\' as an escape character in strings. The escape characters above must be double escaped. So "\d" needs to be written in LSL as "\\d" | |||
Please see [https://wiki.secondlife.com/wiki/Category:LSL_String#Escape_Codes LSL Strings, Escape Codes] | |||
|- | |- | ||
! colspan=3|Named Character Classes | ! colspan=3|Named Character Classes |
Latest revision as of 09:57, 1 July 2024
Regular Expression Cheat Sheet
Wildcard | ||
---|---|---|
. | Matches any character | |
Anchors | ||
^ | Matches the beginning of the string. | |
$ | Matches the end of the string. | |
Expression Prefixes | ||
(?i) | Makes search string case insensitive. | This must be the first thing that appears in the search string.
"(?i)apple" will match "apple", "APPLE", "ApPlE", and any other combination of upper and lower case characters. |
$ | Matches the end of the string. | |
Repeats | ||
* | Matches the preceding atom 0 or more times. | |
+ | Matches the preceding atom 1 or more times. | |
? | Matches the preceding atom 0 or 1 times. | |
{n}
{n,} {n, m} |
Matches the preceding atom n, n or more, or between n and m times. | |
Sub-expressions | ||
(expression) | Text enclosed in parentheses is a marked sub-expression. Text matched as part of a sub-expressions is split out and may be repeated. | |
Alternation | ||
a | b | Match either a or b. | |
Character Sets | ||
[abc] | Matches any one of the enumerated characters. | |
[a-c] | Matches any character in the specified range. | |
[^abc] | Matches any character other than the enumerated characters. | |
[[:name:]] | Matches any character of the named class. | |
Any of the above character set definitions may be combined. | ||
Escape Sequences | ||
Specific Characters | ||
\e | ASCII 0x1B, ESC | |
\n | New line | |
\r | Carriage return | |
\t | Tab | |
\xdd | Matches an ASCII character with the code dd | |
Single character classes | ||
\d
\D |
Any decimal digit. |
|
\l
\L |
Any lower case character. |
|
\s
\S |
Any whitespace character. |
|
\u
\U |
Any upper case character. |
|
\w
\W |
Any "word" character.
Alphanumeric plus underscore |
|
Word boundaries | ||
\< | Start of word. | |
\> | End of word | |
\b | ||
\B | Not a word boundary. | |
*Note* LSL uses '\' as an escape character in strings. The escape characters above must be double escaped. So "\d" needs to be written in LSL as "\\d" Please see LSL Strings, Escape Codes | ||
Named Character Classes | ||
alnum | Any alpha-numeric character. |
|
alpha | Any alphabetic character. |
|
blank | Any whitespace character that is not a line separator. | |
cntrl | Any control character |
|
digit
d |
Any decimal digit |
|
lower
l |
Any lower case character. |
|
Any printable character. | ||
punct | Any punctiation character. | |
space
s |
Any whitespace character. | |
upper
u |
Any upper case character. |
|
word
w |
Any control character |
|
xdigit | Any hexadecimal digit character |
|