\S=[^\f\n\r\t\v]是非空字符。
\s是所有的空字符,[^a-z]匹配任何不在指定范围内的任意字符,那么是不是可以推出
[^\s]表示所有的非空字符?
测试了一下,这样是不对的
那么[^\s]到底是个什么东西呢?
正则表达式非空字符\S与[^\s]区别
-
- 帖子: 64
- 注册时间: 2009-07-02 19:11
-
- 帖子: 919
- 注册时间: 2009-07-01 22:04
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 正则表达式非空字符\S与[^\s]区别
你用的什么正则引擎?shmily623 写了: 那么[^\s]到底是个什么东西呢?
-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 正则表达式非空字符\S与[^\s]区别
在 gvim 中,输入一些乱七八糟的东西,有空格、数字、符号、TAB等,特别提一下,有字母 s,再用冒号命令:
再用查找命令分别查找 \S 和 [^\s],你就看到差别了。
代码: 全选
:set hlsearch
- sevk
- 帖子: 2060
- 注册时间: 2007-05-08 16:26
- 系统: arch
- 来自: 火星内核某分子内某原子核内
- 联系:
Re: 正则表达式非空字符\S与[^\s]区别
没有任何区别。写法不一样而已。
就像
/a+/ 和 /a{1,}/
/a*/ 和 /a{0,}/
就像
/a+/ 和 /a{1,}/
/a*/ 和 /a{0,}/
笔记本 :
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387
F208S : gentoo
A460P i3G D6 : UBUNTU + WIN7
UN43D1 : UBUNTU + WIN7
1000人超级QQ群 LINUX + WIN : 31465544 或 18210387
- lilydjwg
- 论坛版主
- 帖子: 4258
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 正则表达式非空字符\S与[^\s]区别
Vim 不支持在 [] 中使用 \s 这种东西的。不过其它一些 pcre-like 的正则一般都支持。好像 POSIX 的也不支持吧。aerofox 写了:在 gvim 中,输入一些乱七八糟的东西,有空格、数字、符号、TAB等,特别提一下,有字母 s,再用冒号命令:
[...]
再用查找命令分别查找 \S 和 [^\s],你就看到差别了。
-
- 帖子: 90
- 注册时间: 2009-08-07 9:28
Re: 正则表达式非空字符\S与[^\s]区别
在perl里面,后者是空格在开头
- eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙