str.indexOf('i') // 获取第一个i的下标
str.substr(1, 3) // 第一个为开始位置,第二为长度
str.substring(1, 3) // 第一个为开始位置,第二为结束位置
得到一个两数之间的随机整数
例子:/^1\d{10}$/g
^ &为边界的匹配字符,其中有
最后的g为修饰符,其中有
\d 代表预定类,可以很方便的匹配。
使用大写则取反。如\D则为非数字字符
其中{10}表示量词,匹配10个符合要求的字符。
RegExp()的第二个参数主要支持g,i,m这3个修饰性字符
字符g,用来指定全局匹配
字符 i ,是用来指定大小写为等同;
字符 m 是多行一词的缩写,设置匹配模式能够在多行字符串中执行操作
var a = "javasssss"
var s = new RegExp("a","gi")
alert(a.match(s))
返回值为a,a
var a = "javasssss sssswww aaaaa"
var s = new RegExp("\\b\\w","gi")
alert(a.match(s))
返回值为j,s,a
\\b\\w是一个匹配模式,其中反斜杠表示转义序列,而双斜杠表示的是斜杠的意思,\b表示边界的意思\w表示的任意的ASCii码,指的就是每一个单词的首字母;
var a = "javasssss sssswww aaaaa"
var r=new RegExp("\\x61")
var s=a.match(r)
alert(s)
x61表示的是a的十六进制的ascii码,除了十六进制以外,还可以直接使用八进制数值来匹配例如;
var a = "javasssss sssswww aaaaa"
var r=new RegExp("\\141")
var s=a.match(r)
alert(s)
js中的特殊字符
\o表示空字符
\t表示制表位
\n表示换行符
\v表示垂直制表符
\f表示换页符
\r表示回车符
\a表示alert字符
\e表示escape字符
\b表示回退字符
\cX表示控制自负^x
对于这些特殊的字符,如果在RegExp构造函数中使用,必须使用双斜杠表示专业。
定义简单的字符类
var a = "javasssss sssswww aaaaa"
var r=new RegExp("[abcsw]","gi")
var s=a.match(r)
alert(s)
返回值为
查找字符串中是否有字符类中的字母
定义反义字符类
var a = "aba abd abg abe"
var r=new RegExp("ab[^abc]","gi")
var s=a.match(r)
alert(s)
返回值为
第三个字符表示除了a,b,c以外的字符都可以
var r= new RegExp("[^012345679]","gi")
匹配除了数字以外任意的字符。反义字符类比简单字符类更加强大和实用
如果任意双字节的汉字,你可以这样设计
var r=new RegExp("\\u0000-\\u00ff","gi");
预定义字符类
首先明确地回答你:是。
反引号包裹的字符串被称为:模版字符串。
用途1:处理多行字符串
用途2:插入变量,注意变量一定要用${}包裹
用途3:嵌入表达式
在使用过程中,特别是前端模版中,反引号非常有效的提升了开发速度。