码迷,mamicode.com
首页 > 其他好文 > 详细

Editplus的正则表达式

时间:2014-06-08 20:09:22      阅读:344      评论:0      收藏:0      [点我收藏+]

标签:c   class   a   http   tar   ext   

资料来源:Editplus Wiki

http://editplus.info/wiki/Regular_Expressions

http://editplus.info/wiki/Regular_expression_syntax

 

Regular Expressions  正则表达式

This page exists as a resource for Regular Expressions (also shortened as RegEx or RegExp) frequently used in EditPlus. In order to learn more about the particulars of creating a regular expression in EditPlus, see regular expression syntax. Also note that some standard regular expressions are currently not supported.

该网页说明了在EditPlus中常用的正则表达式(Regular Expressions,也通常缩写为RegExRegExp)。为了学习更多关于在EditPlus中生成正则表达式的详细说明,可以看正则表达式语法 。同时也要注意到有些标准的正则表达式目前还不支持

Note: EditPlus only supports [POSIX] Regular Expressions, not [PCRE] (Perl-Compatible Regular Expressions), which means there are no back-references, no look-aheads, no fancy quantifiers, and no convenient character group syntax]]. Just your basic ^, $, +, *, ?, [ ], [^ ], syntax. Also note that +/* are always greedy.

注意:EditPlus只支持[POSIX]标准的正则表达式,二不是[PCRE](兼容Perl的正则表达式),这意味着EditPlus并不支持:回退引用、向前查找、花哨的量化词和方便的字符组语法(这些名词的翻译可能不准确,任何建议请回复本文,谢谢)。它只支持基本的^, $, +, *, ?, [ ], [^ ]等语法。还要主要到 +/* 总是很贪婪的。

 

Regular expression syntax  正则表达式语法

EditPlus supports Regular Expressions in search and replace, but its engine is not as feature-rich as others. A list of common regular expression features not available in EditPlus is available here. Please see Regular Expressions for some commonly used examples.

Operators and Syntax Supported in EditPlus  在EditPlus中支持的操作符和语法

escape (\ = \\) used for matching characters that have special meaning as regular expressions
转义符号,用于匹配那些作为正则表达式有特殊含义的字符(比如要匹配字符\,使用\\即可)
(caret) beginning of line (assertion)
匹配一行的开始(插入)
end of line (assertion)
匹配一行的结束(插入)
\t 
horizontal tab (0x09)
制表符(即对应ASCII代码0x09)
\n 
newline (0x0A or 0x0D or 0x0D+0x0A)
新的一行(对应ASCII代码0x0A 或 0x0D 或 0x0D+0x0A)
(period) any character
代表任意字符
( ) 
referencable grouping, see \0 - \9 below, e.g. (foo) matches "foo"
表达式分组标记,可引用的组,看后面的\0 - \9,例如(foo)匹配"foo"
[ ] 
character class (or-list), e.g. [abc] matches "a", "b", or "c"
匹配字符集合或者字符列表中任意一个字符,例如 [abc] 匹配 "a", "b", 或 "c"
[^ ] 
negated character class, e.g. [^abc] matches a character that is not "a", "b", or "c"
匹配除字符集合或者字符列表之外的任意一个字符,例如[^abc]将不会匹配 "a", "b", 或 "c"
(minus sign) character range used within character class, e.g. [a-z] matches a character in the range "a" through "z"
(减号)用在字符列表中表示字符范围,例如[a-z]匹配从"a" 到 "z"的字符
(vertical bar) logical or, e.g. (foo|bar) matches "foo" or "bar"
(垂直符号)逻辑或,例如(foo|bar) 匹配 "foo" 或 "bar"
(asterisk) match the preceding character or group zero or more times, e.g. foo* matches "fo", "foo", "fooo", etc, but not "f"
(星号)匹配它前面的字符或组零次或多次,例如 foo* 匹配 "fo", "foo", "fooo", 等等, 但是不会匹配 "f"
(plus-sign) match the preceding character or group one or more times, e.g. foo+ matches "foo", "fooo", etc, but not "f" or "fo"
(加号)匹配它前面的字符或组一次或多次,例如 foo+ 匹配 "foo", "fooo", 等等, 但是不会匹配 "f" 或 "fo"
 ? 
(question mark) match the preceding character or group zero or once only, e.g. foo? only matches "fo" and "foo"
(问号)匹配它前面的字符或组零次或一次,例如 foo? 只匹配 "fo" 和 "foo"
\0 - \9 
used in "Replace with" field to represent text matched with parenthesis (\0 = whole match, \1 - \9 = submatches), no back-references
在“替换为”框里表示括号匹配的文本(\0 = 全匹配, \1 - \9 = 子匹配),不支持回退引用
When used in the "Replace with" field, the entire match is replaced. To replace with an actual ampersand, you must escape it \&
在“替换为”框里使用时,会匹配整个表达式。要替换为 "&" 符号,必须转义,使用 \&

Operators and Syntax Not Supported in EditPlus  在EditPlus中不支持的操作符和语法

Some common regular expression syntax/operators not available in EditPlus:

foo{num
match foo exactly num times
foo{min, max
match foo at least min and at most max times, both optional
\a 
0x07, BEL
\f 
0x0C, formfeed
\r 
0x0D, carriage return, see \n
\e 
0x1B, ESC
\xfoo 
0xfoo, hexadecimal character reference
\cfoo 
control-foo
\s 
whitespace character, use [ \t\n]
\S 
non-whitespace character, use [^ \t\n]
\d 
decimal digit, use [0-9]
\D 
not a decimal digit, use [^0-9]
\w 
word character, letter, for English use [A-z]
\W 
non-word character, non-letter, for English use [^A-z]
[[:alpha:]], [[:lower:]], [[:upper:]], [[:alnum:]], [[:digit:]], [[:xdigit:]], [[:punct:]], [[:graph:]], [[:print:]], [[:blank:]], [[:space:]] 
predefined character classes (POSIX)
\b 
word boundary (assertion)
\B 
not a word boundary (assertion)
\A 
subject start (assertion), use ^
\Z 
subject end (assertion), use [\n$]
\z 
subject end (assertion), use $
assertions other than ^ and $ 
parts of patterns that are not added to matches:
(?=foo
positive assertion
(?!foo
negative assertion
(?<=foo), (?<!foo
look-behind assertion
(?>=foo), (?>!foo
look-ahead assertion, once-only sub-pattern
(?(foo)true), (?(foo)true|false
conditional sub-pattern, foo being either the number of a sub-pattern or an assertion
(?:foo
grouping, non-referencable
(?ifoo), (?mfoo), (?sfoo), (?xfoo
inline modifiers
(?R) 
recursive pattern
(?#foo
comment

Workaround

A user tool, Full RegEx Supported Replace and More has been developed that adds full regex support to EditPlus.

Editplus的正则表达式,布布扣,bubuko.com

Editplus的正则表达式

标签:c   class   a   http   tar   ext   

原文地址:http://www.cnblogs.com/ohio/p/3775949.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!