- UID
- 675606
- 积分
- 3406
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2013-5-6
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 /db_自贡黄明儒_ 于 2016-12-12 21:21 编辑
By 香川群子
如果知道一点英文,理解记忆会更快。
\w
→ word 首字母 w
表示26个英文字符【A-Za-z】以及下划线【_】和数字【0-9】的集合,
.Pattern ="\w" 等价于 .Pattern ="[0-9a-z_A-Z]"
其中有英文字符很好理解,因为英语中的word肯定是由英文字母构成的。
另外,在VBA编程中,变量还可以含有数字和下划线,因此数字和下划线也被当做构成统一word的要素。
除此之外的其它字符,都不算构成word的要素了。
…………
\d
→ digit 首字母 d
表示数字【0-9】的集合,
.Pattern ="\d" 等价于 .Pattern ="[0-9]"
…………
\s
→ separate 首字母 s 或space、tab、return简称str字符的首字母。
表示分隔符号 含space 空格【 】或【char(32)】、回车vbCr【char(13)】、换行vbLf【char(10)】、vbTab【char(9)】等,
全部ASCII码值为: char(9)、char(10)、char(11)、char(12)、char(13)、char(32)(空格)
分隔符号的单独分开是\t tab 首字母 vbTab【chr(9)】或 其反集 \T
\v verticaltab 首字母 vbVerticalTab【chr(11)】或 其反集 \V
\f formfeed 首字母 vbFormFeed【chr(12)】或 其反集 \F
\r 回车 return 首字母 r 而在VBA中对应的是:vbCr【chr(13)】或 其反集 \R (Cr是Carriage Return的简称,是机械式打字机时代,字车carriage回复return 到最左边开始的意思 )
苹果机(MAC OS系统) 采用回车符Cr 表示下一行.
\n 换行 newline 首字母n vbLf【chr(10)】或 其反集 \N
(Lf是Line Feed的简称,是机械式打字机时代,回车的同时自动滚进一行的意思 )
UNIX/Linux系统采用 换行符Lf 表示下一行.
\r\n 回车换行 vbCrLf【chr(13) & chr(10)】
Dos和windows系统 采用 回车+换行CrLf 表示下一行,
=================
接下来介绍,对上述几个常用元序列/集合,使用小写字母时是有效,含有的意思,
而使用大写字母时是无效,排除(不含有)的意思,
如:
\W → word 首字母 大写 W 标记的【英文字母、数字、下划线】的序列/集合的反集
小写字母w .Pattern ="\w" 等价于 .Pattern ="[0-9a-z_A-Z]"
大写字母W .Pattern ="\W" 等价于 .Pattern ="[^0-9a-z_A-Z]"
2.
\D → digit 首字母 大写 D 标记的【数字】的序列/集合的反集
小写字母d .Pattern ="\d" 等价于 .Pattern ="[0-9]"
大写字母D .Pattern ="\D" 等价于 .Pattern ="[^0-9]"
3.
\S → separate 首字母 大写 S 标记的不可见换行字符的序列/集合的反集
小写字母s .Pattern ="\s" 等价于 含有char 9,10,11,12,13,32
大写字母S .Pattern ="\S" 等价于 不含有char 9,10,11,12,13,32
\b 和 \B
begin 的首字母 b
意义: 以上述\s separate 集合分隔后得到的每一个 \w word 中的第1个begin字符。
如:
abe sau
dty12 f_34
执行小写字母b .Pattern ="\b." 则得到每一个word的首字母:a s d f
=====
执行大写字母B .Pattern ="\B." 则得到每一个word的首字母以外的字符:b e a u t y 1 2 _ 3 4 |
|