老师 交作业了 请检查

来源:2-16 编程练习

weixin_慕雪4394317

2022-12-26 18:17:56

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
    </style>
</head>

<body>
    <script>
        // 书写待测试的字符串
        var str = '一个"普通字符"在匹配字符串的时候,匹配与他相同的一个字符';

        // 书写正则表达式
        var regexp1 = /"普通字符"/;
        var regexp2 = new RegExp("普通字符");

        var result1 = regexp1.test(str);
        var result2 = regexp2.test(str);
        var result3 = regexp1.exec(str);
        var result4 = regexp2.exec(str);

        // 输出测试
        document.write(result1);
        document.write('/');
        document.write(result2);
        document.write('/');
        document.write(result3);
        document.write('/');
        document.write(result4);
        document.write('/');
    </script>
</body>

</html>


写回答

1回答

好帮手慕慕子

2022-12-26

同学你好,整体思路是对的,但是由于regExp方法中默认接收字符串类型的,所以new RegExp("普通字符")中双引号会被当做字符串外的引号,导致无法匹配到双引号,如下:

https://img.mukewang.com/climg/63a9756e09c690d310900126.jpg

建议修改:在外面添加单引号包裹,此时要匹配的内容就是加了引号的内容

https://img.mukewang.com/climg/63a975a909fb7cb110840302.jpg


祝学习愉快~

0

0 学习 · 17877 问题

查看课程