13.3.5 正则表达式
字符 | 解释 |
x(x‘可代表任何合法的字符) | 字符x |
\0mnn | 八进制数0mnn所表示的字符 |
\xhh | 十六进制值0xhh所表示的字符 |
\uhhhh | 十六进制值0xhhhh所表示的Unicode字符 |
\t | 制表符(‘\u0009‘) |
\n | 新行(换行) 符 (‘\u000A‘) |
\r | 回车符(‘\u000D‘) |
\f | 换页符(‘\u000C‘) |
\a | 报警(bell)符(‘\u0007‘) |
\e | Escape符(‘\u001B‘) |
\cx | x对应的控制符。例如,\cM匹配Ctrl+M。x值必须为A~Z或a~z之一 |
预定义字符 | 说明 |
. | 可以匹配任何字符 |
\d | 匹配0~9的所有数字 |
\D | 匹配非数字 |
\s | 匹配所有的空白字符,包括空格、制表符、回车符、换页符、换行符等 |
\S | 匹配所有的非空白字符 |
\w | 匹配所有的单词字符,包括0~9的所有数字,26个英文字母和下划线(_) |
\W | 匹配所有的非单词字符 |
[]表示法 |
这种表示法最为灵活。例如,[a-z]表示a到z之间任意一个字符,[a-z0-9]表示a到z,或0到9的任意 一个字符,[\u4e00-\u9fff]匹配任意一个汉字(u4e00到u9fff是汉字的Unicode码值范围) |
$ | 匹配一行的结尾。要匹配$字符本身,请使用\$ |
^ | 匹配一行的开头。要匹配^字符本身,请使用\^ |
特殊字符 | 说明 |
? | 指定前面子表达式可以出现零次或一次。要匹配 ? 字符,请使用\? |
* | 指定前面子表达式可以出现零次或多次。要匹配 * 字符,请使用\* |
+ | 指定前面子表达式可以出现一次或多次。要匹配 + 字符,请使用\+ |
{m,n}表示法 |
这种表示法最灵活,前面子表达式最少出现m次,最多出现n次。m、n两个数值都可以省略, 如果省略m,则表示最少可出现0次;如果省略n,则表示最多可出现无限多次 |
除此之外,正则表达式还支持()表示法,用()可以将一个表达式形成一个固定组。还可以再()内使用竖线表示互斥,
例如/((abc)|(efg))/可匹配abc或efg。
正则表达式代码示范:
function trim(s)
{
//将所有匹配的内容替换成‘‘(即截取前、后的空格)
return s.replace(/(^\s*)|(\s*$)/g,"");
}
//输出截去了前后空白的字符串 即:Hello,JavaScript
alert(trim(‘ Hello,javaScript ‘));
13.4 复合类型
复合类型是有多个基本数据类型(也可以包括复合类型)组成的数据体。
JavaScript中的复合类型大致上有如下3中:
Object:对象。
Array:数组。
Function:函数。
13.4.1 对象
除了Object之外,JavaScript还提供了如下常用的内置类
Array:数组类。
Date:日期类。
Error:错误类。
Function:函数类。
Math:数字类,该对象包含相当多的执行数学运算的方法。
Number:数值类。
Object:对象类。
String:字符串类。
13.4.2 数组
JavaScript中数组元素的类型可以不相同。定义一个数组有如下3种方法。
var a = [3,5,23];
var b =[];
var c = new Array();
第一种在定义数组时已为数组完成了数组元素的初始化,第二种和第三种都只创建一个空数组。
13.4.3 函数
JavaScript的函数声明中,参数列表不需要数据类型声明,函数的返回值也不需要数据类型声明。
函数定义的语法格式如下:
function functionName(param1,param2,.....)
{
}
7月28号=》296页-300页,布布扣,bubuko.com
原文:http://www.cnblogs.com/duzuoyan/p/3874199.html