牛骨文教育服务平台(让学习变的简单)
博文笔记

正则表达式符号(一)

创建时间:2012-03-05 投稿人: 浏览次数:8894
 ^表示字符串必须以后面的规则开头, 在这里就是说字符串必须以s*开头.

s 是空格的意思, * 表示有0个或多个

s* 就是有0个或多个空格

(^s*) 表示的就是以0个空格或者多个空格开头

| 表示或的意思, 也就是满足| 左边的也成立, 满足 | 右面的也成立.

s*前面说过了

$ 的意思是字符串必须以前面的规则结尾

(s*$) 的意思就是, 以0个空格或者多个空格结尾

/.../g 是正则表达式的属性, 表示全文匹配, 而不是找到一个就停止.


eg:
(/(^s*)|(s*$)/g, "") 
这个正则表达式替换的就是前导空格和后导空格
因为有前导空格, 就说明以0个或多个空格开头, 满足正则表达式中 | 前面的条件: (^s*)
而如果有后导空格, 就说明以0个或多个空格结尾, 满足正则表达式中 | 后面的条件: (s*$) 

===================================================================

正则表达式的介绍:

1.可以使用字符作为一个通配符来代替除换行符(
)之外的任意一个字符,例如: .at可以与"cat","sat","mat"等匹配.通常,这种通配符用于操作系统中文件名匹配.

2.[a-z],任何含在[]中的内容都是一个字符,只匹配一个字符.

如:[a-zA-Z]代表任意大小写字母.

3.[^a-z].匹配任何不属于a-z中的字符.

4.[a-z&&[hij]].匹配hij任何一个(交集)

5.s.匹配空字符(空格,tab,
,换页,回车)

6.S.匹配非空字符(和[^s]一样)

7.d.匹配数字,相当于[0-9]

8.D.匹配非数字,相当于[^0-9],匹配中文,空格,换行符

9.w.匹配词字符,相当于[a-zA-Z0-9],不包含中文,不能代表空格,换行符

10.W.匹配非词字符,相当于[^w],匹配一个中文字

逻辑运算符:

|:管道符.如:x|y表示x或y

():捕获组.(abc)|(xyz)表示abc或xyz

边界匹配符:

^:从头匹配

$:从尾匹配

:词界.

B.非词界

量词:

量词描述一个模式吸收输入文本的方式.

*:前面字符或组匹配0或多个

+:前面字符或组匹配1或多个

?:前面字符或组匹配0或1个

{n}:前面字符或组的数量为n个

{n,}:前面字符或组的数量至少n个

{n,m}:前面字符或组数量至少n个,最多m个
 
在正则表达式中具有特殊含义的字符

特殊字符

描述

    .    表示任意一个字符
    [abc]    表示a、b或c中的任意一个字符
    [^abc]    除a、b和c以外的任意一个字符
    [a-zA-z]    介于a到z,或A到Z中的任意一个字符
    s    空白符(空格、tab、换行、换页、回车)
    S    非空白符
    d    任意一个数字[0-9]
    D    任意一个非数字[^0-9]
    w    词字符[a-zA-Z_0-9]
    W    非词字符
表示字符出现次数的符号

表示次数的符号

描述

    *    0 次或者多次
    +    1 次或者多次
    ?    0 次或者 1 次
    {n}    恰好 n 次
    {n, m}    至少 n 次,不多于 m 次
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。