一、字符串
1.字符串的特点:
同数组一样,字符串也有下标和长度这两个属性,并且字符串遍历也用for
但不同的是,获取字符串中制定位置的字符用
str.charAt(i) //str变量名,i表示字符串中的下标
例:
var str='no zuo no die';
console.log(str.length);//获取字符串的长度
//遍历字符串
for(var i=0;i
//获取字符串中的元素
console.log(str.charAt(i));
//获取指定位置字符的unicode号
console.log(str.charCodeAt(i));
}
2.字符串中的API:所有字符串中的API都无权修改原字符串,必须返回新字符串
1)toUpperCase();转大写 //案例见demo02 demo03
2) toLowerCase();转小写 //案例见demo02 demo03
3) slice(starti,endi+1);截取 //案例见demo04
4)concat(); 拼接 //案例见demo05
5) substring(starti,endi+1);截取 用法同slice 只是不支持负数参数
6) substr(starti,n);截取从starti开始的n个字符 //案例见demo07
* 7) indexOf('关键词',starti);检索一个固定关键词出现的位置
从starti开始,查找下一个关键词出现的位置
如果找不到,返回-1
如果不写starti,默认从0开始找
案例见demo08
* 8) lastIndexOf('关键词',starti);检索上一个固定关键词出现的位置
从str中fromi位置开始查找前一个"关键词"出现的位置
如果找不到,返回-1
简写:省略fromi, 表示从末尾开始找
何时:只要查找最后一个xxxx
二、正则表达式(Regular Expression):
1.定义: 规定字符串中出现规律的规则.用来检某个字符串是否符合规则或检测字符串
中是否包含符合规定的子字符串
2.如何声明一个正则表达式
var reg=/ /;
var reg=new RegExp(/正则表达式/);
验证是否正确用reg.test(str); //reg代表正则表达式,str代表字符串
语法:
1.最简单的正则就是字符集原文 案例见demo10
2.字符集:规定一位字符可用的备选列表 [备选字符列表] 案例见demo10
3.如果字符列表中部分字符连续就可以用-省略
一位大写字母:[A-Z]
一位小写字母:[a-z]
一位字母:[A-Za-z]
一位数字:[0-9]
4.除了[^xxx]表示除了xxx都行 [^]表示除了
5.预定义字符集:对部分常用字符集的简化 案例见demo11
一位数字:\d===>[0-9]
一位字母、数字、下划线\w===>[A-Za-z0-9_字符
一位空字符(空格、换行 tab):\s
.匹配除回车和换行以外的所有字符
6.量词:专门规定一个字符出现次数的规则
有明确数量限制:
{m,n}至少出现m次,最多出现n次
{m,}至少出现m次,多了不限
{m}必须出现m次
没有明确数量限制:
?可有可无,最多一次
*可有可无,多了不限
+至少一次,多了不限
练习:
1.身份证号的正则
前17位为数字,最后一位可以为数字或x或X
/^\d{17}[xX]$/
7.分组和选择
分组:将多个字符集用()(圆括号)包裹为一组
选择:其实就是程序中的或者 |
规则1|规则2 只要满足其一即可
手机号:
+86或0086? 可有可无,最多一次
空字符可有可无,多了不限
1
在3,4,5,7,8,9之中挑一个
9位数字
^(\+86|0086)?\s*1[345789]\d{9}$
网友评论