字符串的方法
1.charAt(5)可以返回字符串中指定位置的字符
2.indexof()检索字符串中是否含有指定内容,并返回第一次出现的索引,如果没有找到指定的内容则返回-1;
lastIndexof是从后往前找
3.slice()截取指定内容,不会影响原字符串,而是将截取内容返回
参数:第一个开始位置索引(包括开始位置)
第二个结束位置索引(不包括结束位置)
也可以传递一个负数作为参数,负数则会从后面进行计算
subString()截取方法类似,不同的是不能传负数,如果传默认是0
subStr()用来截取字符串
参数:1.截取开始位置的索引 2.是截取的长度
Split()可以将一个字符串拆为数组
参数:需要一个字符串作为参数,将会根据字符串拆分数组
toUpperCase()将一个字符转化为大写并返回
toLowerCase()转为小写
str="abcdefg";
result=str.split("");
console.log(result)//a,,b,c,d,e,f,g
正则表达式的简介:
正则表达式用来定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则,获取将字符串中符合规则的内容提取出来
语法:
var 变量=new RegExp(“正则表达式”,“匹配模式”);
使用字面量来创建正则表达式
语法:var 变量=/正则表达式/匹配模式
reg =/a/i ;
reg = /a|b/ //检查字符串中是否有a或b
console.log(reg.test("acdef"))//返回结果是true
创建一个正则表达式检查一个字符串中是否有字母【】里面的内容也是或的关系
【ab】==a|b
【a-z】表示任意小写字母
【^ab】除了
2. 字符串和正则相关的方法
根据任意字母将字符串拆分了
3. search()可以搜索字符串中是否含有指定内容
match()可以根据正则表达式,从一个字符串中将符合条件的内容提取出来,默认情况下match只会找到一个符合要求的内容,找到以后就停止检索 可以设置正则表达式为全局匹配模式,这样就会匹配到所有的内容
replace()替换,可以将字符串中指定内容替换成新的内容
参数:1.被替换的内容
2. 新的内容 默认只会替换第一个,可接受正则表达式
4.练习:
创建一个正则表达式检查一个字符串中是否有aaa
量词:
通过量词可以设置一个内容出现的次数 {n}表示正好出现n次,
1) reg =/(ab){3}/ 表示ab出现3次
2) reg=/ab{1,3}c/ 表示abc或者两次bb或者三次bbb
3) {b+} +表示至少一个以上
4) {b*} 表示0个或者多个
检查一个字符串中是否以a开头
reg = /^a/ 检查以a开头
reg=/a$/ 检查以a结尾
如果在一个正则表达式中同时使用 ^
5.检查一个字符串中是否含有.
. 表示任意字符
. 来表示 .
\w表示任意字母,数字,_ [A-z0-9_]
\W除了任意字母,数字,_ [^A-z0-9_]
\d表示任意的数字 [0-9]
\D表示除了数字 [^0-9]
\s表示空格 reg=[/ \s /];
\S除了空格
\b单词边界
\B除了单词边界
练习:
去除字符串的前后的空格 去除空格用“”空串来替换空格
6.邮件的正则
电子邮件: wang@qq.com
任意字符数字下划线都可 @[任意字母数字] .任意字母(2-5位)
\w{ 3, } (. \w+)* @ [A-z0-9]+ (.[A-z]{2,5}){1,2}
var emailReg = /^\w{ 3, } (. \w+)* @ [A-z0-9]+ (.[A-z]{2,5}){1,2}$/;
var email = 93923@qq.com;
console.log(emailReg.test(email));