JavaScript —— 正则表达式元字符

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>正则表达式</title>
<script>
	/**
	 * 正则表达式:也叫规则表达式,按照一定的规则组成的一个表达式,这个表达式的作用主要是匹配字符串的,
	 * 
	 * 正则表达式的作用:匹配字符串的
	 * 在大多数的编程语言中都可以使用
	 * 
	 * 正则表达式的组成:石油元字符或者是限定符组成的一个式子
	 * 
	 * 元字符:
	 * (1).   除了\n以外的任意一个字符 '1'
	 * (2)[]  1、范围,[0-9] 0-9之间的任意一个数字|[a-z] a-z之间的任意一个小写字母|[A-Z] A-Z之间的任意一个大写字母|[a-zA-Z] a-z A-Z 之间的任意一个字母|[0-9a-zA-Z] 任意一个数字或者字母
	 *        2、把正则表达式中元字符的意义干掉  [.] 表示的就是 一个.
	 * (3)|   或者 [0-9]|[a-z] 要么是一个数字 要么是一个小写字母
	 * (4)()  分组 提升优先级 如,[0-9]|([a-z])|[A-Z]优先计算小括号里面的小写字母 如,([0-9])([a-z])([A-Z]) 三组 从最左边开始计算 如,(()(())) 四组 (()((
	 *
	 * 以下这些既是元字符也可叫限定符:
	 * (5) * 表示的是:前面的表达式出现了0次到多次 [a-z][0-9]*  会出现任意一个小写字母 且数字会出现0次到多次 
	 * 'svnazsjb230203023'  [a-z][0-9]* true
	 * (6)+  表示前面表达时出现1次或多次
	 * [a-z][9]+ 一个小写字母后面最少1个9,或者多个9  "jafmv9vadv"       
	 * (7)?  表示的是前面的表达式出现了0次到1次,最少0次,最多1次,另一个含义:阻止贪婪模式[4][a-z]?  "142324ij"
	 *
	 * 限定符:限定前面的表达式出现的次数
	 * 
	 * (8) {  }  可以更明确前面的表达式出现的次数
	 *     (1、 {0,}  表示前面的表达式出现了0次到多次(*)
	 *     (2、 {1,}  表示前面的表达式出现了1次到多次(+)
	 *     (3、 {0,1} 表示前面的表达式出现了0次到1次(?)
	 *     (4、 {3,4} 表示前面的表达式出现了3次到4次
	 *     (5、 {4}   表示前面的表达式出现了4次
	 *     (6、 {,30} 错误的
	 * (9)  ^  表示的是以什么开始(^[0-9] 以数字开头; ^[a-z] 以小写字母开头),或者是取非(取反)([^0-9]  非数字; [^0-9a-zA-Z)] 取特殊符号(下划线_不是特殊符号)
	 *(10)  $  表示以什么结束[0-9][a-z]$ 必须以一个小写字母结束(1a); ^[0-9][a-z]$  相当于严格模式 这样写 "1234re" falus// "4f" true
	 *(11) \d  数字中的任意一个
	 *(12) \D  非数字中的任意一个(字母+特殊符号)
	 *(13) \s  空白符中的任意一个
	 *(14) \S  空白符中的任意一个
	 *(15) \w  非特殊符号(_)等价于[0-9a-zA-Z_]
	 *(16) \W  特殊符号   等价于^[0-9a-zA-Z_]
	 *(17) \b  单词的边界
	 *(18) \f  换页符
	 *(19) \n  换行符
	 *
	 *
	 *
	 *
	 *
	 * 
	 */
	/*  #### 常用元字符串

        | 元字符  | 说明                         |
        | ----   | ---------------              |
        | \d     | 匹配数字                      |
        | \D     | 匹配任意非数字的字符           |
        | \w     | 匹配字母或数字或下划线         |
        | \W     | 匹配任意不是字母,数字,下划线  |
        | \s     | 匹配任意的空白符               |
        | \S     | 匹配任意不是空白符的字符        |
        | .      | 匹配除换行符以外的任意单个字符  |
        | ^      | 表示匹配行首的文本(以谁开始)    |
        | $      | 表示匹配行尾的文本(以谁结束)    |
        
        #### 常用元字符串
        
        | 元字符| 说明                            |
        | ----  | ------------------------------ |
        | \d    | 匹配数字                        |
        | \D    | 匹配任意非数字的字符             |
        | \w    | 匹配字母或数字或下划线           |
        | \W    | 匹配任意不是字母,数字,下划线    |
        | \s    | 匹配任意的空白符                 |
        | \S    | 匹配任意不是空白符的字符          |
        | .     | 匹配除换行符以外的任意单个字符    |
        | ^     | 表示匹配行首的文本(以谁开始)      |
        | $     | 表示匹配行尾的文本(以谁结束)      |
        
        #### 限定符
        
        | 限定符 | 说明             |
        | ----- | -----------------|
        | *     | 重复零次或更多次  |
        | +     | 重复一次或更多次  |
        | ?     | 重复零次或一次    |
        | {n}   | 重复n次          |
        | {n,}  | 重复n次或更多次   |
        | {n,m} | 重复n到m次       |

       #### 其它

       [] 字符串用中括号括起来,表示匹配其中的任一字符,相当于或的意思
       [^]  匹配除中括号以内的内容
       \ 转义符
       | 或者,选择两者中的一个。注意|将左右两边分为两部分,而不管左右两边有多长多乱
       () 从两个直接量中选择一个,分组
          eg:gr(a|e)y匹配gray和grey
       [\u4e00-\u9fa5]  匹配汉字
       
        */
</script>
</head>
<body>
    
</body>
</html>

  

猜你喜欢

转载自www.cnblogs.com/sylys/p/11600118.html
今日推荐