设为首页 加入收藏

TOP

web前端篇:JavaScript正则表达式(二)
2019-09-17 19:00:14 】 浏览:69
Tags:web 前端 JavaScript 正则 表达式
gt; <meta charset="UTF-8"> <title>exec</title> </head> <body> <script type="text/java script"> var str='abc'; var reg1 = /x/; var reg2 = /a/; console.log(reg1.exec(str));//null console.log(reg2.exec(str));//array["a", index: 0, input: "xyz"] </script> </body> </html>

? 如果正则表达式包含圆括号,则返回的数组会包括多个元素。首先是整个匹配成功的结果,后面是圆括号里匹配成功的结果,如果有多个圆括号,他们的匹配成功的结果都会成为数组元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>exec</title>
</head>
<body>
    <script type="text/java script">
        var str='abcdabc';
        var reg1 = /(a)b(c)/;
        console.log(reg1.exec(str));//["abc", "a", "c", index: 0, input: "abcdabc", groups: undefined]
    </script>
</body>
</html>

3.3 search方法

? search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

? 返回值: stringObject 中第一个与 regexp 相匹配的子串的起始位置。

? 注释:如果没有找到任何匹配的子串,则返回 -1。

? search() 方法不执行全局匹配,它将忽略标志 g。它同时忽略 regexp 的 lastIndex 属性,并且总是从字符串的开始进行检索,这意味着它总是返回 stringObject 的第一个匹配的位置。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>search</title>
</head>
<body>
    <script type="text/java script">
        var str='abcdefgh';
        console.log(str.search('h'))//7
    </script>
</body>
</html>

3.4match方法

? match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。

? 字符串对象的match方法与正则对象的exec方法比较类似:但是如果正则表达式带有g修饰符,那么match方法与exec方法就有差别了:可以看到match返回了所有成功匹配的结果,但是exec方法只返回了一个。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>match</title>
</head>
<body>
    <script type="text/java script">
        var str = "abcd";
        var reg1 = /a/;
        var reg2 = /x/;
        console.log(str.match(reg1));//a
        console.log(str.match(reg2));//null

        var str2 = "abcabc";
        var reg3 = /a/g;
        console.log(str2.match(reg3));//['a','a']
    </script>
</body>
</html>

3.5 replace方法

? replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

返回值:一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。

? 字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>replace</title>
</head>
<body>
    <script type="text/java script">
        var str = "aaa";
        console.log(str.replace('a', 'f'));//fbcdaa
    </script>
</body>
</html>

3.6 split方法

? split(‘字符串的分割正则','返回数组的最大成员数');返回分割后各部分组成的数组

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>split</title>
</head>
<body>
    <script type="text/java script">
        var str = "a,b,c,d,e,f";
        var res = str.split(",");//以逗号来分割字符串
        console.log(res
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Vue+element 解决浏览器自动填充.. 下一篇6.12号整理(h5新特性-图片、文件..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目