Thứ Tư, 3 tháng 12, 2008

C# .Net Bonus: Regix Library - Cheats Sheet

From : RegixLib.com
Namespace: System.Text.RegularExpressions





Metacharacters Defined

MCharDefinitionPatternSample Matches
^Start of a string.^abcabc, abcdefg, abc123, ...
$End of a string.abc$abc, endsinabc, 123abc, ..
.Any character (except \n newline)a.cabc, aac, acc, adc, aec, ...
|Alternation.bill|tedted, bill
{...}Explicit quantifier notation.ab{2}cabbc
[...]Explicit set of characters to match.a[bB]cabc, aBc
(...)Logical grouping of part of an expression.(abc){2}abcabc
*0 or more of previous expression.ab*cac, abc, abbc, abbbc, ...
+1 or more of previous expression.ab+cabc, abbc, abbbc, ...
?0 or 1 of previous expression; also forces minimal matching when an expression might match several strings within a search string.ab?cac, abc
\Preceding one of the above, it makes it a literal instead of a special character. Preceding a special matching character, see below.a\sca c









Character Escapes http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconcharacterescapes.asp

ordinary charactersCharacters other than . $ ^ { [ ( | ) ] } * + ? \ match themselves.
\a
Matches a bell (alarm) \u0007.
\b
Matches a backspace \u0008 if in a []; otherwise matches a word boundary (between \w and \W characters).
\t
Matches a tab \u0009.
\r
Matches a carriage return \u000D.
\v
Matches a vertical tab \u000B.
\f
Matches a form feed \u000C.
\n
Matches a new line \u000A.
\e
Matches an escape \u001B.
\040
Matches an ASCII character as octal (up to three digits); numbers with no leading zero are backreferences if they have only one digit or if they correspond to a capturing group number. (For more information, see Backreferences.) For example, the character \040 represents a space.
\x20
Matches an ASCII character using hexadecimal representation (exactly two digits).
\cC
Matches an ASCII control character; for example \cC is control-C.
\u0020Matches a Unicode character using a hexadecimal representation (exactly four digits).
\*
When followed by a character that is not recognized as an escaped character, matches that character. For example, \* is the same as \x2A.



Character Classes http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconcharacterclasses.asp

.
Matches any character except \n. If modified by the Singleline option, a period character matches any character. For more information, see Regular Expression Options.
[aeiou]Matches any single character included in the specified set of characters.
[^aeiou]Matches any single character not in the specified set of characters.
[0-9a-fA-F]Use of a hyphen (–) allows specification of contiguous character ranges.
\p{name}
Matches any character in the named character class specified by {name}. Supported names are Unicode groups and block ranges. For example, Ll, Nd, Z, IsGreek, IsBoxDrawing.
\P{name}
Matches text not included in groups and block ranges specified in {name}.
\w
Matches any word character. Equivalent to the Unicode character categories [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \w is equivalent to [a-zA-Z_0-9].
\W
Matches any nonword character. Equivalent to the Unicode categories [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \W is equivalent to [^a-zA-Z_0-9].
\s
Matches any white-space character. Equivalent to the Unicode character categories [\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \s is equivalent to [ \f\n\r\t\v].
\S
Matches any non-white-space character. Equivalent to the Unicode character categories [^\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \S is equivalent to [^ \f\n\r\t\v].
\d
Matches any decimal digit. Equivalent to \p{Nd} for Unicode and [0-9] for non-Unicode, ECMAScript behavior.
\D
Matches any nondigit. Equivalent to \P{Nd} for Unicode and [^0-9] for non-Unicode, ECMAScript behavior.

2 nhận xét:

  1. I recently came across your blog and have been reading along. I thought I would leave my first comment. I don't know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.


    Sara

    http://pianonotes.info

    Trả lờiXóa