- 浏览: 2262783 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (423)
- FileNet相关 (3)
- 应用服务器相关 (22)
- Java综合 (77)
- 持久层 (24)
- struts (11)
- webservice (8)
- 虚拟机 (2)
- 光盘刻录 (0)
- AD及AD集群 (1)
- JS (33)
- F5 (0)
- loadrunner8.1 (0)
- Java 反编译工具 (2)
- DataBase (62)
- ant (1)
- 操作系统 (29)
- 我的任务 (3)
- 平台架构 (16)
- 业务规则引擎 (2)
- 模板 (1)
- EJB (5)
- spring (24)
- CMMI (1)
- 项目管理 (20)
- LDAP (13)
- JMS (10)
- JSP (19)
- JBPM (2)
- web MVC框架设计思想 (2)
- 第三方支付平台 (2)
- BUG管理工具 (1)
- 垃圾站 (2)
- php (1)
- swing (1)
- 书籍 (1)
- QQ qq (2)
- 移动互联网 (26)
- 爱听的歌曲 (0)
- hadoop (4)
- 数据库 (9)
- 设计模式 (1)
- 面试经验只谈 (1)
- 大数据 (9)
- sp (1)
- 缓存数据库 (8)
- storm (2)
- taobao (2)
- 分布式,高并发,大型互联网,负载均衡 (6)
- Apache Ignite (0)
- Docker & K8S (0)
最新评论
-
wangyudong:
新版本 Wisdom RESTClienthttps://gi ...
spring rest mvc使用RestTemplate调用 -
wangyudong:
很多API doc生成工具生成API文档需要引入第三方依赖,重 ...
spring rest mvc使用RestTemplate调用 -
zhaoshijie:
cfying 写道大侠,还是加载了两次,怎么解决啊?求。QQ: ...
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
xinglianxlxl:
对我有用,非常感谢
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
k_caesar:
多谢,学习了
利用maven的resources、filter和profile实现不同环境使用不同配置文件
java.util.regex.Pattern
正则表达式的一种已编译的实现。
正则表达式通常以字符串的形式出现,它首先必须被编译为Pattern类的一个实例。
结果模型可以用来生成一个Matcher,它(生成的Macher实例)可以匹配根据
这个正则表达式生成的任意字符序列。在实现一个匹配器中的匹配时包括了
任意多的情况,并且多个匹配器可以共享同一个匹配模式。
下面是一个典型的调用次序:
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
为了方便使用,Pattern类也定义了matches()方法,
因为有时候一个正则表达使只用到一次。
在一次调用中,这个方法首先编译表达式,然后匹配输入的序列。
下面这个句子:
boolean b = Pattern.matches("a*b", "aaaaab");
等价于上面的三个句子。但是由于它不允许便以后的模式被重用,所以在需要重复匹配
时显然比上面的方法效率要低。
Pattern类的实例不能被改变,并且是线程安全的。注意,Matcher类并不是线程安全的
。
正则表达式结构简介:
字符:
x 字符 x
\\ 反斜杠
\0n 十进制数 (0 <= n <= 7)
\0nn 十进制数 0nn (0 <= n <= 7)
\0mnn 十进制数 0mnn (0 <= m <= 3, 0 <= n <= 7)
\xhh 十六进制数 0xhh
\uhhhh 十六进制数 0xhhhh
\t 制表符 ('\u0009')
\n 换行符 ('\u000A')
\r 回车符 ('\u000D')
\f The form-feed character ('\u000C')
\a The alert (bell) character ('\u0007')
\e esc符号 ('\u001B')
\cx x 对应的控制符
字符类
[abc] a, b, 或 c (简单字符串)
[^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 非单字字符: [^\w]
POSIX 字符类 (US-ASCII only)
\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]
Unicode 字符类
\p{InGreek} 希腊语种的字符 (simple block)
\p{Lu} 大写字母 (simple category)
\p{Sc} 货币符号
\P{InGreek} 除希腊语种字符外的任意字符 (negation)
[\p{L}&&[^\p{Lu}]] 除大写字母外的任意字符 (subtraction)
边界匹配器
^ 一行的开始
$ 一行的结束
\b 单词边界
\B 非单词边界
\A 输入的开始
\G 当前匹配的结束
\Z The end of the input but for the final terminator, if any
\z 输入的结束
Greedy quantifiers
贪婪匹配量词(Greedy quantifiers )(不知道翻译的对不对)
X? X不出现或出现一次
X* X不出现或出现多次
X+ X至少出现一次
X{n} X出现n次
X{n,} X至少出现n次
X{n,m} X至少出现n次,但不会超过m次
Reluctant quantifiers
X?? X, 不出现或出现一次
X*? X, 不出现或出现多次
X+? X, 至少出现一次
X{n}? X, 出现n次
X{n,}? X, 至少出现n次
X{n,m}? X, 至少出现n次,但不会超过m次
Possessive quantifiers
X?+ X, 不出现或出现一次
X*+ X, 不出现或出现多次
X++ X, 至少出现一次
X{n}+ X, 出现n次
X{n,}+ X, 至少出现n次
X{n,m}+ X, 至少出现n次,但不会超过m次
逻辑运算符
XY Y跟在X后面
X|Y X 或 Y
(X) X, as a capturing group
反向引用
\n Whatever the nth capturing group matched
Quotation
\ 引用后面的字符
\Q 引用所有的字符直到 \E 出现
\E 结束以 \Q 开始的引用
Special constructs (non-capturing)
(?:X) X, as a non-capturing group
(?idmsux-idmsux) 匹配标志开关
(?idmsux-idmsux:X) X, as a non-capturing group with the given flags on
- off
(?=X) X, via zero-width positive lookahead
(?!X) X, via zero-width negative lookahead
(?<=X) X, via zero-width positive lookbehind
(?<!X) X, via zero-width negative lookbehind
(?>X) X, as an independent, non-capturing group
Backslashes, escapes, and quoting
反斜杠字符('\')用来转义,就像上面的表中定义的那样,如果不这样做的话可能会产生
歧义。因此,表达式\\匹配
单个反斜杠,表达式\{匹配单个左花括号。
如果把反斜杠放在没有定义转移构造的任何字母符号前面都会发生错误,这些将被保留
到以后的正则表达式中扩展。反斜杠可以放在任何
非字母符号前面,即使它没有定义转义构造也不会发生错误。
在java语言规范中指出,在java代码中自符串中的反斜杠是必要的,不管用于Unicode转
义,还是用于普通的字符转义。因此,
为了保持正则表达式的完整性,在java字符串中要写两个反斜杠。例如,在正则表达式
中字符'\b'代表退格,'\\b'则代表单词边界。'\(hello\)'是无效的,并且会产生编译
时错误,你必须用
'\\(hello\\)'来匹配(hello)。
Character Classes
字符类可以出现在其他字符类内部,并且可以由并操作符和与操作符(&&)组成。并集操
作结果是,其中的任意字符,肯定在至少其中操作数中至少出现过一次。
交集的结果包括各个操作数中同时出现的任意字符。
字符类操作符的优先级如下:(从高到低)
1 文字转义 \x
2 集合 [...]
3 范围 a-z
4 并集 [a-e][i-u]
5 交集 [a-z&&[aeiou]]
请注意各个字符类的有效字符集。例如,在字符类中,正则表达式.失去了它的特别含义
,而-变成了元字符的范围指示。
Line terminators
行结束符是一个或两个字符序列,用来标识输入字符序列的一行的结束。下列都被认为
是行结束符:
换行符 ('\n'),
回车换行符 ("\r\n"),
回车符 ('\r'),
下一行 ('\u0085'),
行分隔符 ('\u2028'), 或
段分隔符 ('\u2029).
如果激活了 UNIX_LINES 模式,唯一的行结束符就是换行符。
除非你指定了 DOTALL 标志,否则正则表达式.匹配任何字符,只有行结束符除外。
确省情况时,在整个输入队列中,正则表达式^和$忽略行结束符,只匹配开始和结束。
如果激活了 MULTILINE 模式,则^匹配输入的开始和所有行结束符之后,除了整个输入
的结束。
在MULTILINE 模式下,$匹配所有行结束符之前,和整个输入的结束。
Groups and capturing
分组捕获通过从左到右的顺序,根据括号的数量类排序。例如,在表达式((A)(B(C)))中
,有四个组:
1 ((A)(B(C)))
2 (A)
3 (B(C))
4 (C)
0组代表整个表达式。
分组捕获之所以如此命名,是因为在匹配过程中,输入序列的每一个与分组匹配的子序
列都会被保存起来。通过向后引用,被捕获的子序列可以在后面的表达式中被再次使用
。
而且,在匹配操作结束以后还可以通过匹配器重新找到。
与一个分组关联的被捕获到的输入通常是被保存的最近与这个分组相匹配的队列的子队
列。如果一个分组被第二次求值,即使失败,它的上一次被捕获的值也会被保存起来。
例如,
表达式(a(b)?)+匹配"aba","b"设为子分组。在开始匹配的时候,以前被捕获的输入都
将被清除。
以(?开始的分组是完全的,无需捕获的分组不会捕获任何文本,也不会计算分组总数。
Unicode support
Unicode Technical Report #18: Unicode Regular Expression Guidelines通过轻微的语法改变实现了更深层次的支持。
在java代码中,像\u2014 这样的转义序列,java语言规范中?3.3提供了处理方法
。
为了便于使用从文件或键盘读取的unicode转义字符,正则表达式解析器也直接实现了这
种转移。因此,字符串"\u2014"与"\\u2014"虽然不相等,但是编译进同一种模式,可以
匹配
十六进制数0x2014。
在Perl中,unicode块和分类被写入\p,\P。如果输入有prop属性,\p{prop}将会匹配,
而\P{prop}将不会匹配。块通过前缀In指定,作为在nMongolian之中。
分类通过任意的前缀Is指定: \p{L} 和 \p{IsL} 都引用 Unicode 字母。块和分类可以
被使用在字符类的内部或外部。
The Unicode Standard, Version 3.0指出了支持的块和分类。块的名字在第14章和 Unicode Character
Database中的 Blocks-3.txt 文件定义,
但空格被剔除了。例如Basic Latin"变成了 "BasicLatin"。分类的名字被定义在88页
,表4-5。
Comparison to Perl 5
Pattern类不支持的Perl构造:
条件构造 (?{X}) 和 (?(condition)X|Y),
嵌入代码构造 (?{code}) 和 (??{code}),
嵌入注释语法 (?#comment), 和
操作预处理 \l \u, \L, and \U.
Perl不支持的Pattern类构造:
所有权量词,它贪婪匹配任意多。
字符类交集和并集。
正则表达式的一种已编译的实现。
正则表达式通常以字符串的形式出现,它首先必须被编译为Pattern类的一个实例。
结果模型可以用来生成一个Matcher,它(生成的Macher实例)可以匹配根据
这个正则表达式生成的任意字符序列。在实现一个匹配器中的匹配时包括了
任意多的情况,并且多个匹配器可以共享同一个匹配模式。
下面是一个典型的调用次序:
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();
为了方便使用,Pattern类也定义了matches()方法,
因为有时候一个正则表达使只用到一次。
在一次调用中,这个方法首先编译表达式,然后匹配输入的序列。
下面这个句子:
boolean b = Pattern.matches("a*b", "aaaaab");
等价于上面的三个句子。但是由于它不允许便以后的模式被重用,所以在需要重复匹配
时显然比上面的方法效率要低。
Pattern类的实例不能被改变,并且是线程安全的。注意,Matcher类并不是线程安全的
。
正则表达式结构简介:
字符:
x 字符 x
\\ 反斜杠
\0n 十进制数 (0 <= n <= 7)
\0nn 十进制数 0nn (0 <= n <= 7)
\0mnn 十进制数 0mnn (0 <= m <= 3, 0 <= n <= 7)
\xhh 十六进制数 0xhh
\uhhhh 十六进制数 0xhhhh
\t 制表符 ('\u0009')
\n 换行符 ('\u000A')
\r 回车符 ('\u000D')
\f The form-feed character ('\u000C')
\a The alert (bell) character ('\u0007')
\e esc符号 ('\u001B')
\cx x 对应的控制符
字符类
[abc] a, b, 或 c (简单字符串)
[^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 非单字字符: [^\w]
POSIX 字符类 (US-ASCII only)
\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]
Unicode 字符类
\p{InGreek} 希腊语种的字符 (simple block)
\p{Lu} 大写字母 (simple category)
\p{Sc} 货币符号
\P{InGreek} 除希腊语种字符外的任意字符 (negation)
[\p{L}&&[^\p{Lu}]] 除大写字母外的任意字符 (subtraction)
边界匹配器
^ 一行的开始
$ 一行的结束
\b 单词边界
\B 非单词边界
\A 输入的开始
\G 当前匹配的结束
\Z The end of the input but for the final terminator, if any
\z 输入的结束
Greedy quantifiers
贪婪匹配量词(Greedy quantifiers )(不知道翻译的对不对)
X? X不出现或出现一次
X* X不出现或出现多次
X+ X至少出现一次
X{n} X出现n次
X{n,} X至少出现n次
X{n,m} X至少出现n次,但不会超过m次
Reluctant quantifiers
X?? X, 不出现或出现一次
X*? X, 不出现或出现多次
X+? X, 至少出现一次
X{n}? X, 出现n次
X{n,}? X, 至少出现n次
X{n,m}? X, 至少出现n次,但不会超过m次
Possessive quantifiers
X?+ X, 不出现或出现一次
X*+ X, 不出现或出现多次
X++ X, 至少出现一次
X{n}+ X, 出现n次
X{n,}+ X, 至少出现n次
X{n,m}+ X, 至少出现n次,但不会超过m次
逻辑运算符
XY Y跟在X后面
X|Y X 或 Y
(X) X, as a capturing group
反向引用
\n Whatever the nth capturing group matched
Quotation
\ 引用后面的字符
\Q 引用所有的字符直到 \E 出现
\E 结束以 \Q 开始的引用
Special constructs (non-capturing)
(?:X) X, as a non-capturing group
(?idmsux-idmsux) 匹配标志开关
(?idmsux-idmsux:X) X, as a non-capturing group with the given flags on
- off
(?=X) X, via zero-width positive lookahead
(?!X) X, via zero-width negative lookahead
(?<=X) X, via zero-width positive lookbehind
(?<!X) X, via zero-width negative lookbehind
(?>X) X, as an independent, non-capturing group
Backslashes, escapes, and quoting
反斜杠字符('\')用来转义,就像上面的表中定义的那样,如果不这样做的话可能会产生
歧义。因此,表达式\\匹配
单个反斜杠,表达式\{匹配单个左花括号。
如果把反斜杠放在没有定义转移构造的任何字母符号前面都会发生错误,这些将被保留
到以后的正则表达式中扩展。反斜杠可以放在任何
非字母符号前面,即使它没有定义转义构造也不会发生错误。
在java语言规范中指出,在java代码中自符串中的反斜杠是必要的,不管用于Unicode转
义,还是用于普通的字符转义。因此,
为了保持正则表达式的完整性,在java字符串中要写两个反斜杠。例如,在正则表达式
中字符'\b'代表退格,'\\b'则代表单词边界。'\(hello\)'是无效的,并且会产生编译
时错误,你必须用
'\\(hello\\)'来匹配(hello)。
Character Classes
字符类可以出现在其他字符类内部,并且可以由并操作符和与操作符(&&)组成。并集操
作结果是,其中的任意字符,肯定在至少其中操作数中至少出现过一次。
交集的结果包括各个操作数中同时出现的任意字符。
字符类操作符的优先级如下:(从高到低)
1 文字转义 \x
2 集合 [...]
3 范围 a-z
4 并集 [a-e][i-u]
5 交集 [a-z&&[aeiou]]
请注意各个字符类的有效字符集。例如,在字符类中,正则表达式.失去了它的特别含义
,而-变成了元字符的范围指示。
Line terminators
行结束符是一个或两个字符序列,用来标识输入字符序列的一行的结束。下列都被认为
是行结束符:
换行符 ('\n'),
回车换行符 ("\r\n"),
回车符 ('\r'),
下一行 ('\u0085'),
行分隔符 ('\u2028'), 或
段分隔符 ('\u2029).
如果激活了 UNIX_LINES 模式,唯一的行结束符就是换行符。
除非你指定了 DOTALL 标志,否则正则表达式.匹配任何字符,只有行结束符除外。
确省情况时,在整个输入队列中,正则表达式^和$忽略行结束符,只匹配开始和结束。
如果激活了 MULTILINE 模式,则^匹配输入的开始和所有行结束符之后,除了整个输入
的结束。
在MULTILINE 模式下,$匹配所有行结束符之前,和整个输入的结束。
Groups and capturing
分组捕获通过从左到右的顺序,根据括号的数量类排序。例如,在表达式((A)(B(C)))中
,有四个组:
1 ((A)(B(C)))
2 (A)
3 (B(C))
4 (C)
0组代表整个表达式。
分组捕获之所以如此命名,是因为在匹配过程中,输入序列的每一个与分组匹配的子序
列都会被保存起来。通过向后引用,被捕获的子序列可以在后面的表达式中被再次使用
。
而且,在匹配操作结束以后还可以通过匹配器重新找到。
与一个分组关联的被捕获到的输入通常是被保存的最近与这个分组相匹配的队列的子队
列。如果一个分组被第二次求值,即使失败,它的上一次被捕获的值也会被保存起来。
例如,
表达式(a(b)?)+匹配"aba","b"设为子分组。在开始匹配的时候,以前被捕获的输入都
将被清除。
以(?开始的分组是完全的,无需捕获的分组不会捕获任何文本,也不会计算分组总数。
Unicode support
Unicode Technical Report #18: Unicode Regular Expression Guidelines通过轻微的语法改变实现了更深层次的支持。
在java代码中,像\u2014 这样的转义序列,java语言规范中?3.3提供了处理方法
。
为了便于使用从文件或键盘读取的unicode转义字符,正则表达式解析器也直接实现了这
种转移。因此,字符串"\u2014"与"\\u2014"虽然不相等,但是编译进同一种模式,可以
匹配
十六进制数0x2014。
在Perl中,unicode块和分类被写入\p,\P。如果输入有prop属性,\p{prop}将会匹配,
而\P{prop}将不会匹配。块通过前缀In指定,作为在nMongolian之中。
分类通过任意的前缀Is指定: \p{L} 和 \p{IsL} 都引用 Unicode 字母。块和分类可以
被使用在字符类的内部或外部。
The Unicode Standard, Version 3.0指出了支持的块和分类。块的名字在第14章和 Unicode Character
Database中的 Blocks-3.txt 文件定义,
但空格被剔除了。例如Basic Latin"变成了 "BasicLatin"。分类的名字被定义在88页
,表4-5。
Comparison to Perl 5
Pattern类不支持的Perl构造:
条件构造 (?{X}) 和 (?(condition)X|Y),
嵌入代码构造 (?{code}) 和 (??{code}),
嵌入注释语法 (?#comment), 和
操作预处理 \l \u, \L, and \U.
Perl不支持的Pattern类构造:
所有权量词,它贪婪匹配任意多。
字符类交集和并集。
发表评论
-
各大巨头电商提供的IP库API接口-新浪、搜狐、阿里...
2015-04-22 13:18 15913关键字:各大巨头电商提供的IP库API接口-新浪、搜狐、阿里. ... -
用Java来获取访问者真实的IP地址-超准确
2015-04-22 12:55 6259关键字:用Java来获取访问者真实的IP地址-超准确 下面分享 ... -
Shiro集成OAuth2
2015-04-21 10:31 12447关键字:Shiro集成OAuth2 参考:http://jin ... -
淘宝网架构分享总结 - 架构,分布式,淘宝,虚拟化,水平伸缩
2015-04-19 00:25 7638推荐综合架构交流群:JAVA开发高级群 点击入群!!! 关键 ... -
Zookeeper 和 SASL
2015-04-16 09:29 13641关键字:Zookeeper 和 SASL 介绍 这是一个描述Z ... -
非对称加密(RSA)加密解密实现通信JAVA端工具类(教程)
2015-04-15 17:27 1186关键字:非对称加密(RSA)加密解密实现通信JAVA端工具类( ... -
对称加密(AES)加密实现工具类(教程)
2015-04-15 17:11 2149关键字:对称加密(AES)加密实现工具类(教程) Java加 ... -
Curator-Framework开源Zookeeper快速开发框架介绍
2015-04-14 18:41 705关键字:Curator-Framework开源Zookeepe ... -
IM消息推送之Openfire
2015-04-13 13:40 2218关键字:IM消息推送之Openfire Openfire 采用 ... -
Nio框架之Mina的demo
2015-04-12 13:38 647关键字:Nio框架之Mina的demo 官网:http://m ... -
AMQP中文版协议规范
2015-01-23 17:12 2992关键字:AMQP中文版协议规范 AMQP中文版协议规范:ht ... -
数据库连接池选型
2014-12-04 18:32 1171关键字:数据库连接池选型 proxool(与spring不太 ... -
spring中的数据源配置信息加密方案
2014-10-22 10:36 1078关键字:spring中的数据源配置信息加密方案 附件是完整的 ... -
OAuth2.0的Java实现 Apache Amber
2014-10-09 23:20 800关键字:OAuth2.0的Java实现 Apache Ambe ... -
企业信息管理系统基础框架jeesite
2014-05-06 22:21 2595jeesite项目地址(使用说明,):http://jeesi ... -
java中文分词组件-word分词
2014-05-06 21:33 21991关键字:java中文分词组 ... -
java制作可执行文件EXE文件
2014-05-05 18:58 1611关键字:java制作可执行文件EXE文件 参考:http: ... -
Quartz任务调度器详解
2014-04-25 22:46 19009关键字: 参考文章:ht ... -
各种hash算法-hashcodeUtil
2014-04-24 15:36 4253关键字:各种hash算法-hashcodeUtil -
性能监控工具类(StopWatchUtil)
2014-03-21 15:12 5749关键字:性能监控工具类(StopWatchUtil) 附 ...
相关推荐
- 过滤和提取:根据正则表达式,过滤掉不相关的信息,或者提取特定部分的数据。 4. **正则表达式在编程中的应用** - 数据验证:在表单提交时,可以使用正则表达式验证输入格式,如邮箱、电话号码等。 - 文件搜索...
在使用时,开发者可能需要查阅相关的文档,或者考虑升级到支持更强大正则表达式功能的版本,如PowerBuilder 2017 R3。 总的来说,"PB实现的正则表达式"是一个关于在PowerBuilder 11.5中利用自定义或第三方库实现...
- 集成Deelx版正则表达式支持库到项目中,通常需要引用相关的头文件,并调用提供的API进行匹配、替换等操作。 - 对于静态库,开发者需要将库文件链接到项目中,确保在运行时能够找到库函数。 总之,正则表达式...
在使用封装的正则表达式模块时,记得引入相关的头文件并实例化对象,然后在适当的地方调用验证方法。 总之,通过Qt的正则表达式功能,我们可以实现对lineEdit输入的强大控制,提供更友好的用户交互体验。这个项目...
Java使用正则表达式提取XML节点内容的方法示例主要介绍了Java使用正则表达式提取XML节点内容的方法,结合具体实例形式分析了java针对xml格式字符串的正则匹配相关操作技巧。 一、正则表达式简介 正则表达式是指一...
标题中的“pb 使用正则表达式源码pbregexp”指的是在PowerBuilder(简称pb)环境中,利用名为“pbregexp”的正则表达式组件来实现源代码级别的正则表达式操作。PowerBuilder是一款流行的可视化的、面向对象的软件...
根据提供的文件信息,我们可以整理出一系列与正则表达式相关的知识点。这些知识点涵盖了从基本的数字验证到复杂的字符串匹配等多个方面。下面是详细的知识点总结: ### 基本概念 正则表达式是一种用于文本模式匹配...
Boost库的正则表达式组件,即`boost::regex`,是C++实现正则表达式的常用选择之一,它提供了一套完整的API接口,使得在C++中编写正则表达式相关的代码变得相对简单。 在Visual Studio 2008环境下,开发者可以将...
文件"deelx.h"可能是MFC正则表达式类库的一个头文件,其中包含了上述类的定义和其他相关函数声明。在实际项目中,你需要将这个头文件包含到你的源代码中,以便使用MFC提供的正则表达式功能。 总的来说,MFC的正则...
- `Regex`类:这是处理正则表达式的核心类,提供了多种与正则相关的静态方法和实例方法。 - `Match`类:表示正则表达式的一个匹配结果。 - `MatchCollection`类:存储多个匹配结果的集合。 2. **正则表达式语法*...
随着互联网的迅速发展,几乎所有工具软件和程序语言都支持的正则表达式也变得越来越强大和易于使用。本书是讲解正则表达式的经典之作。本书主要讲解了正则表达式的特性和流派、匹配原理、优化原则、实用诀窍以及调校...
易语言是一种专为中国人设计的编程语言,它以简体中文作为编程语句,降低了编程的门槛,使得更多的人能够理解和使用编程...通过深入理解正则表达式和易语言的相关函数,开发者可以灵活地处理各种复杂的文本处理任务。
读者可以在遵守相关法律和版权规定的情况下,获得这本书籍,并通过它来系统地学习和提高自己使用正则表达式的技能。 总的来说,《正则表达式 必知必会》不仅是一本入门级的教程,也是一本可以伴随程序员成长的参考...
正则表达式生成工具极大地简化了正则表达式的构建过程,降低了使用难度,使得即使是对正则表达式不熟悉的人也能高效地完成相关任务。对于专业开发人员来说,这样的工具更是提升效率的好帮手。在实际使用中,结合"The...
然而,这也需要程序员学习和掌握正则表达式相关的知识。 在Java中,正则表达式的基础知识包括: 1. **句点符号**(.):匹配任意单个字符,包括空格和换行符。 2. **方括号符号**([]):定义一个字符集合,匹配...
在本案例中,“易语言正则表达式取网址和名称”指的是使用易语言这一编程环境,结合正则表达式技术来从文本中提取网址(URLs)和相关名称。易语言是中国开发的一款简单易学的编程语言,它为程序员提供了一个直观的...
在IT领域,正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配字符串模式。...在实际应用中,掌握正则表达式和如何利用相关工具生成满足正则的数据,对于提升工作效率和测试覆盖率具有重要意义。
这里用C#实现了正则表达式相关功能,并记录了所有的正则表达式的相关符号,是一个不可多得的正则表达式生成工具,这个工具适用3种场合: 1.对于初学正则表达式的朋友,这个工具适合你 2.需要C#正则表达式示例代码的...