JavaScript正则表达式实战与经典测试

需积分: 50 2 下载量 64 浏览量 更新于2024-09-03 1 收藏 5KB MD 举报
本文档是一份关于JavaScript正则表达式的实用教程,涵盖了多个经典例题,旨在帮助学习者理解和掌握正则表达式在JavaScript中的应用。以下是一些关键知识点: 1. **测试方法与模式匹配** - 第1题涉及的正则表达式`/^(SE)?[0-9]{12}$/`用于检查输入是否以"SE"开头,后面跟着12个数字。正确答案是D,因为"ESX1234567Y"符合这个模式。 2. **数字范围匹配** - 第2题正则表达式`/^([1-9]|[1-9][0-9]|[1-9][0-9][0-9])$/`用于匹配1到3位数字,排除0开头的情况。正确答案是C,因为"127"是符合要求的三位数字。 3. **单个数字及可选前导零** - 第3题 `/^[0-5]?[0-9]$/` 匹配0到9的数字,可能有前导零。正确答案是D,因为"10"是最简单的单个数字。 4. **单词重复匹配** - 第4题要求匹配两个相邻的相同单词,包括可能的空白字符。答案是D,`\b(\w+)\s+\1\b` 可以捕获并匹配这样的情况。 5. **字符串替换与全局搜索** - 第5题中,`s.replace(r,'a')` 会全局替换第一个出现的"A"为"a"。在`vars`字符串中,"AAA"会被替换为"aAA",所以答案是B。 6. **HTML标签匹配** - 第6题要求匹配包含特定内容的HTML `<p>` 标签。`/<p>(.*?)<\/p>/` 匹配整个段落,包括其中的内容,但不包括结束标签,正确答案是A。 7. **HTML标记识别** - 第7题中的正则表达式用于匹配HTML标签,`</?[a-z][a-z0-9]*[^<>]*>/` 匹配标签,D选项`</body>` 是一个有效的标签。 8. **字符串搜索与索引** - 第8题中,`"JavaScript".search(/a(.)a/)` 寻找第一个"aa"序列的起始位置,因为有两次连续的"a",所以返回值是3。 9. **String函数search的用法** - 第9题中,A选项正确,因为大小写不敏感,`"JavaScript".search(/script/i)` 会找到"script"的位置,返回4;B选项未提及,无法判断其正确性。 通过这些例题,学习者可以了解正则表达式在JavaScript中的使用场景,包括匹配模式、特殊字符、重复字符以及字符串操作等。理解并熟练运用正则表达式是JavaScript编程中的一项重要技能。