模式名称 |
启用,禁用 |
缺省启用 |
说明 |
UNIX_LINES |
(?d)启用,(?-d)禁用 |
是 |
启用Unix行模式。 在此模式下,只有'\n'被认为是行结束符。它会影响.,^, 和$的行为。 |
CASE_INSENSITIVE |
(?i)启用,(?-i)禁用 |
否 |
启用忽略大小写模式。 缺省时,忽略大小写模式只会影响 ASCII字符的匹配。 而Unicode范围的忽略大小写匹配需要通过 UNICODE_CASE 标志与本标志联合使用。 启用此模式会影响匹配性能。 |
COMMENTS |
(?x)启用,(?-x)禁用 |
否 |
允许空格和注释出现在正则表达式中。 在此模式下,空格被忽略,以#开始的单行注释被忽略。 |
MULTILINE |
(?m)启用,(?-m)禁用 |
是 |
启用多行模式。 In multiline mode the expressions^and$match just after or just before, respectively, a line terminator or the end of the input sequence. By default these expressions only match at the beginning and the end of the entire input sequence. |
DOTALL |
(?s)启用,(?-s)禁用 |
否 |
让.可以匹配行结束符。 在此模式下,元字符.可以匹配行结束符。缺省不允许如此匹配。 |
UNICODE_CASE |
(?u)启用,(?-u)禁用 |
否 |
Enables Unicode-aware case folding. When this flag is specified then case-insensitive matching, when enabled by theCASE_INSENSITIVEflag, is done in a manner consistent with the Unicode Standard. By default, case-insensitive matching assumes that only characters in the US-ASCII charset are being matched. 启用此模式会影响性能。 |
CANON_EQ |
(?c)启用,(?-c)禁用 |
否 |
Enables canonical equivalence. When this flag is specified then two characters will be considered to match if, and only if, their full canonical decompositions match. The expression"a\u030A", for example, will match the string"?"when this flag is specified. By default, matching does not take canonical equivalence into account. 启用此模式会影响性能。 |
正则表达式字符串 |
匹配的字符串 |
X |
字符X,包括 CJK ExtB 区汉字 |
\\ |
反斜杠\ |
\0n | 八进制0n代表的字符(0<=n<=7) |
\0nn |
八进制0nn代表的字符(0<=n<=7) |
\0mnn |
八进制0mnn代表的字符(0<=m<=3,0<=n<=7) |
\xhh |
十六进制 0xhh所代表的字符 |
\uhhhh |
十六进制 0xhhhh所代表的字符。注意,目前尚不支持CJK ExtB区汉字。 |
\t |
制表符('\u0009') |
\n |
换行('\u000A') |
\r |
回车('\u000D') |
\a |
响铃符('\u0007') |
\e |
取消符Escape('\001B') |
\cx |
x所代表的控制字符 |
正则表达式字符串 |
匹配的字符串 |
XY |
X后面跟随Y |
X|Y |
X或者Y |
(X) |
X作为分组表达式 |
正则表达式字符串 |
匹配的字符串 |
\n |
第n个匹配的分组 |
边界字符 |
匹配的字符串 |
^ |
行首 |
$ |
行末 |
\b | 字符边界 |
\B |
非字符边界 |
\A |
输入流的开始 |
\G |
上次匹配的结束处 |
\Z |
输入流的结束,或者是最后一个行结束符,参见[url=file:///D:/source/jtextpro/src/dist/jtextpro/docs/regexp.html#man_line_terminator]行结束符[/url]。 |
\z |
输入流的结束 |
正则表达式字符串 |
匹配的字符串 |
X? |
X重复一次,或者不重复 |
X* |
X重复0次或多次 |
X+ |
X重复1次或多次 |
X{n} |
X重复n次,不多也不少。 |
X{n,} |
X至少重复n次 |
X{n,m} |
X至少重复n次,至多重复m次。 |
正则表达式字符串子集 |
匹配的字符串 |
组合方式 |
[abc] |
字符a,b或c,包括 CJK ExtB 区汉字 |
简单子集 |
[^abc] |
任意非a,b或c的字符。 |
排除 |
[a-zA-Z] | 从a到z,或者A到Z,包含a,z,A,Z。 |
区间 |
[a-d[m-p]] |
从a到d,或者m到p,等于[a-dm-p]。 |
联合 |
[a-z&&[def]] |
d,e或者f。 |
交集 |
[a-z&&[^bc]] |
从a到z,除了b和c,等于[ad-z] |
扣除 |
[a-z&&[^m-p]] |
从a到z,并且不包括从m到p,等于[a-lq-z] |
扣除 |
边界字符 |
匹配的字符串 |
. |
任意字符,可能匹配行结束符。 |
\d |
数字[0-9] |
\D | 非数字[^0-9] |
\s |
空白符[ \t\n\x0B\f\r] |
\S |
非空白符[^\s] |
\w |
单词符,包含有字母和数字[a-zA-Z_0-9] |
\W |
非单词符,不包含有字母和数字。 |
正则表达式字符串 |
匹配的字符串 |
|
|
名称 |
块名称(\p{InXXX}) |
简化通配符 |
标准Unicode块,或者汉字列表 |
任意双字节字符(汉字或全角符号) |
\p{InQuqnJiao} |
\E |
任意由GBK表示的汉字,不包括GB18030扩展部分, 以及CJK ExtB区的汉字。 |
任意单字节字符 |
\p{InFQuanJiao} |
\~E |
任意单字节字符。 |
任意全角ASCII字符 |
\p{InQJAscii} |
\H |
标准HalfwidthandFullwidthForms块 |
任意收录在BIG5码集中的双字节字符 |
\p{InBig5} |
\I |
Big5可编码双字节字符 |
匹配未收录在BIG5码集中的双字节字符 | \p{InFBig5} |
\~I |
非Big5可编码双字节字符 |
匹配任意汉字(不包括符号) |
\p{InHanziOrCJKExtB} |
\X |
任意汉字,包括GB18030扩展部分。 |
匹配任意汉字(不包括符号) |
\p{InHanzi} |
\M |
任意汉字,不包括GB18030扩展部分。 |
匹配非汉字的双字节字符 |
\p{InFHanzi} |
\~M |
任意非汉字的双字节字符, 包括GB18030扩展部分。 |
地支字符 |
\p{InDiZhi} |
\U |
子丑寅卯辰巳午未申酉戌亥 |
匹配收录在GB码集中的双字节字符 |
\p{InGB} |
\g |
收录在GB码集中的双字节字符, 不包括GB18030扩展部分。 |
匹配非收录在GB码集中的双字节字符 |
\p{InFGB} |
\~g |
未收录在GB码集中的双字节字符, 不包括GB18030扩展部分。 |
匹配收录在GBK码集中的双字节字符 |
\p{InGBK} |
\h |
收录在GBK码集中的双字节字符, 不包括GB18030扩展部分。 |
匹配非收录在GBK码集中的双字节字符 |
\p{InFGBK} |
\~h |
未收录在GBK码集中的双字节字符, 不包括GB18030扩展部分。 |
大写希腊字母 |
\p{InDaXila} |
\K |
ΑΒΓΔΕΖΗΘΙΚΛΜΝ ΞΟΠΡΣΤΥΦΧΨΩ |
日文片假名 |
\p{InPianJia} |
\j |
标准Katakana块 |
日文平假名 |
\p{InPingJia} |
\J |
标准Hiragana块 |
小写希腊字母 |
\p{InXiaoXila} |
\k |
αβγδεζηθικλμν ξοπρστυφχψω |
数学符号 |
\p{InMathe} |
\m |
±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙ ∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴ |
中文数字 |
\p{InCnDigit} |
\i |
〇一二三四五六七八九十百千万亿兆吉京 |
大写中文数字 |
\p{InDaCnDigit} |
\N |
零壹贰叁肆伍陆柒捌玖拾佰仟萬亿兆吉京 |
全角标点符号 |
\p{InQJBiaoDian} |
\o |
、。·ˉˇ¨〃々—~‖…‘’“”〔〕 〈〉《》「」『』〖〗【】!"'(), -.:;<=>?[]{|}`﹉﹊﹋﹌﹍﹎﹏﹐﹑﹒﹔﹕﹖﹗﹙﹚ ﹛﹜﹝﹞︵︶︹︺︿﹀︽︾﹁﹂﹃﹄ ︻︼︷︸︱︳︴ |
小写俄文字母 |
\p{InXiaoEWen} |
\l |
абвгдеёжзийклмн опрстуфхцчшщъыьэюя |
大写俄文字母 |
\p{InDaEWen} |
\R |
АБВГДЕЁЖЗИЙКЛМНО ПРСТУФХЦЧШЩЪЫЬЭЮЯ |
中文序号 |
\p{InCnSN} |
\q |
ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ 再加上Unicode标准EnclosedAlphanumerics块 |
天干字符 |
\p{InTianGan} |
\T |
甲乙丙丁戊己庚辛壬癸 |
竖排标点符号 |
\p{InSPBiaoDian} |
\V |
︵︶︹︺︿﹀︽︾﹁﹂﹃﹄︻︼︷︸︱︳︴ |
拼音字符 |
\p{InPinyin} |
\y |
āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüêɑńňɡ GBK -> 0xA8A1- 0xA8C0 只是Unicode标准LatinExtended-A块的一部分。 |
注音字符 |
\p{InZhuyin} |
\Y |
标准Bopomofo块 |
制表字符 |
\p{InZhiBiao} |
\C |
标准BoxDrawing块。 经检查发现 textpro 的算法含有部分非标 准Unicode制表符:“∟∣≒≦≧⊿═”。 |
正则表达式字符串 |
匹配的字符串 |
\p{Lower} |
小写字母[a-z] |
\p{Upper} |
大写字母[A-Z] |
\p{ASCII} |
所有的ASCII字符[\x00-\x7F] |
\p{Alpha} |
大小写字母[\p{Lower}\p{Upper}] |
\p{Digit} |
数字[0-9] |
\p{Alnum} |
字母数字符,包含大小写字母和数字[\p{Alpha}\p{Digit}] |
\p{Punct} |
标点符号,!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~之一。 |
\p{Graph} |
可显示字符[\p{Alnum}\p{Punct}] |
\p{Print} |
可打印字符[\p{Graph}] |
\p{Blank} |
空格或者制表符[ \t] |
\p{Cntrl} |
控制字符[\x00-\x1F\x7F |
\p{XDigit} |
十六进制数字[0-9a-fA-F] |
\p{Space} |
空白符[ \t\n\x0B\f\r] |
块 |
中文名称(摘自Word XP) |
代码区域 |
BasicLatin |
基本拉丁语 |
\u0000-\u007F |
Latin-1Supplement |
拉丁语-1 |
\u0080-\u00FF |
LatinExtended-A |
拉丁语扩充-A |
\u0100-\u017F |
LatinExtended-Bound |
拉丁语扩充-B |
\u0180-\u024F |
IPAExtensions |
国际音标扩充 |
\u0250-\u02AF |
SpacingModifierLetters |
进格的修饰字符 |
\u02B0-\u02FF |
CombiningDiacriticalMarks |
组合用发音符 |
\u0300-\u036F |
Greek |
基本希腊语 |
\u0370-\u03FF |
Cyrillic |
西里尔语 |
\u0400-\u04FF |
Armenian |
|
\u0530-\u058F |
Hebrew |
|
\u0590-\u05FF |
Arabic |
|
\u0600-\u06FF |
Syriac |
|
\u0700-\u074F |
Thaana |
|
\u0780-\u07BF |
Devanagari |
|
\u0900-\u097F |
Bengali |
|
\u0980-\u09FF |
Gurmukhi |
|
\u0A00-\u0A7F |
Gujarati |
|
\u0A80-\u0AFF |
Oriya |
|
\u0B00-\u0B7F |
Tamil |
|
\u0B80-\u0BFF |
Telugu |
|
\u0C00-\u0C7F |
Kannada |
|
\u0C80-\u0CFF |
Malayalam |
|
\u0D00-\u0D7F |
Sinhala |
|
\u0D800-\uDFF |
Thai |
|
\u0E00-\u0E7F |
Lao |
|
\u0E80-\u0EFF |
Tibetan |
藏语 |
\u0F00-\u0FFF |
Myanmar |
|
\u1000-\u109F |
Georgian |
|
\u10A0-\u10FF |
HangulJamo |
|
\u1100-\u11FF |
Ethiopic |
|
\u1200-\u137F |
Cherokee |
|
\u13A0-\u13FF |
UnifiedCanadianAboriginalSyllabics |
|
\u1400-\u167F |
Ogham |
|
\u1680-\u169F |
Runic |
|
\u16A0-\u16FF |
Khmer |
|
\u1780-\u17FF |
Mongolian |
蒙古语 |
\u1800-\u18AF |
LatinExtendedAdditional |
|
\u1E00-\u1EFF |
GreekExtended |
|
\u1F00-\u1FFF |
GeneralPunctuation |
广义标点 |
\u2000-\u206F |
SuperscriptsandSubscripts |
|
\u2070-\u209F |
CurrencySymbols |
货币符号 |
\u20A0-\u20CF |
CombiningMarksforSymbols |
|
\u20D0-\u20FF |
LetterlikeSymbols |
类似字母的符号 |
\u2100-\u214F |
NumberForms |
数字形式 |
\u2150-\u218F |
Arrows |
箭头 |
\u2190-\u21FF |
MathematicalOperators |
数学运算符 |
\u2200-\u22FF |
MiscellaneousTechnical |
零杂技术用符号 |
\u2300-\u23FF |
ControlPictures |
|
\u2400-\u243F |
OpticalCharacterRecognition |
|
\u2440-\u245F |
EnclosedAlphanumerics |
带括号的字母数字 |
\u2460-\u24FF |
BoxDrawing |
制表符 |
\u2500-\u257F |
BlockElements |
方块图形 |
\u2580-\u259F |
GeometricShapes |
几何图形 |
\u25A0-\u25FF |
MiscellaneousSymbols |
零杂丁贝符(示意符等) |
\u2600-\u26FF |
Dingbats |
|
\u2700-\u27BF |
BraillePatterns |
|
\u2800-\u28FF |
CJKRadicalsSupplement |
|
\u2E80-\u2EFF |
KangxiRadicals |
|
\u2F00-\u2FDF |
IdeographicDescriptionCharacters |
|
\u2FF0-\u2FFF |
CJKSymbolsandPunctuation |
CJK符号和标点 |
\u3000-\u303F |
Hiragana |
平假名 |
\u3040-\u309F |
Katakana |
片假名 |
\u30A0-\u30FF |
Bopomofo |
注音 |
\u3100-\u312F |
HangulCompatibilityJamo |
|
\u3130-\u318F |
Kanbun |
|
\u3190-\u319F |
BopomofoExtended |
扩展注音 |
\u31A0-\u31BF |
EnclosedCJKLettersandMonths |
带括号的CJK字母及月份 |
\u3200-\u32FF |
CJKCompatibility |
CJK兼容字符 |
\u3300-\u33FF |
CJKUnifiedIdeographsExtensionA |
CJK统一汉字扩展-A |
\u3400-\u4dBF |
CJKUnifiedIdeographs |
CJK统一汉字 |
\u4E00-\u9fAF |
YiSyllables |
|
\uA000-\uA48F |
YiRadicals |
|
\uA490-\uA4CF |
HangulSyllables |
|
\uAC00-\uD7A3 |
HighSurrogates |
|
\uD800-\uDB7F |
HighPrivateUseSurrogates |
|
\uDB80-\uDBFF |
LowSurrogates |
|
\uDC00-\uDFFF |
PrivateUse |
专用区 |
\uE000-\uF8FF |
CJKCompatibilityIdeographs |
CJK兼容汉字 |
\uF900-\uFAFF |
AlphabeticPresentationForms |
|
\uFB00-\uFB4F |
ArabicPresentationForms-A |
|
\uFB50-\uFDFF |
CombiningHalfMarks |
|
\uFE20-\uFE2F |
CJKCompatibilityForms |
CJK兼容形式 |
\uFE30-\uFE4F |
SmallFormVariants |
小写变体 |
\uFE50-\uFE6F |
ArabicPresentationForms-Bound |
|
\uFE70-\ufeFF |
Specials |
|
\uFFF0-\uFFFF |
HalfwidthandFullwidthForms |
半形及全形字符 |
\uFF00-\uFFEF |
分类 |
全称 |
说明 |
Cn |
|
UNASSIGNED |
Lu |
|
UPPERCASE_LETTER |
Ll |
|
LOWERCASE_LETTER |
Lt |
|
TITLECASE_LETTER |
Lm |
|
MODIFIER_LETTER |
Lo |
|
OTHER_LETTER |
Mn |
|
NON_SPACING_MARK |
Me |
|
ENCLOSING_MARK |
Mc |
|
COMBINING_SPACING_MARK |
Nd |
|
DECIMAL_DIGIT_NUMBER |
Nl |
|
LETTER_NUMBER |
No |
|
OTHER_NUMBER |
Zs |
|
SPACE_SEPARATOR |
Zl |
|
LINE_SEPARATOR |
Zp |
|
PARAGRAPH_SEPARATOR |
Cc |
|
CNTRL |
Cf |
|
FORMAT |
Co |
|
PRIVATE_USE |
Cs |
|
SURROGATE |
Pd |
|
DASH_PUNCTUATION |
Ps |
|
START_PUNCTUATION |
Pe |
|
END_PUNCTUATION |
Pc |
|
CONNECTOR_PUNCTUATION |
Po |
|
OTHER_PUNCTUATION |
Sm |
|
MATH_SYMBOL |
Sc |
|
CURRENCY_SYMBOL |
Sk |
|
MODIFIER_SYMBOL |
So |
|
OTHER_SYMBOL |
L |
|
LETTER |
M |
|
MARK |
N |
|
NUMBER |
Z |
|
SEPARATOR |
C |
|
CONTROL |
P |
|
PUNCTUATION |
S |
|
SYMBOL |
LD |
|
LETTER_OR_DIGIT |
L1 |
|
Latin-1 |
all |
|
ALL |
ASCII |
|
ASCII |
Alnum |
|
字母数字(0-9,a-z,A-Z) |
Alpha |
|
字母(a-z,A-Z) |
Blank |
|
空格和制表符(' '|\t) |
Cntrl |
|
控制字符,不可打印 |
Digit |
|
数字(0-9) |
Graph |
|
可打印且可视字母(例如空格' '是可打印的但不是可视字母,而 `a' 两者都是。) |
Lower |
|
小写字母 |
Print |
|
可打印字母(非控制字符) |
Punct |
|
标符号(字母、数字、控制、空白符以外的字母),如:!@#$%}{<>,./?[]等等。 |
Space |
|
空白符(' ',\t,0x09,0x0A,0x0B,0x0C,0x0D,0x20) |
Upper |
|
大写字母 |
XDigit |
|
十六进制数字(0-9,a-f, A-F) |
特殊字符介绍 |
描述 |
\n |
换行 |
\b |
向前删除一个字符。当这个字符位于替换串之首时,将删除匹配串之前的一个字符。若匹配串位于行首,将使匹配串所在行与前一行相合并。 |
\d |
向后删除一个字符。当这个字符位于替换串之末时,将删除匹配串之后的一个字符。若匹配串位于行末,将使匹配串所在行与下一行相合并。 |
\e |
插入一个ESC字符 |
\t |
插入一个TAB字符 |
\n |
n代表查找正则表达式中的子表达式(组)。\1代表第一个子表达式,\2代表第二个子表达式,依次类推。\0代表整个匹配到的字符串。 |
\v |
大写下一个字母 |
\U |
全部大写以后的字母,直到碰到其它指示符为止。 |
\l |
小写下一个字母 |
\L |
全部小写以后的字母,直到碰到其它指示符为止。 |
\E |
取消所有的字母大小写指示符。 |