当前位置:  首页>> 技术小册>> JavaScript面试指南

正则表达式是一种用于匹配文本模式的工具。它是由字符和操作符组成的模式,用于搜索、替换和验证字符串。正则表达式在处理文本时非常有用,因为它可以帮助我们有效地匹配和过滤出我们需要的内容。

正则表达式的应用场景非常广泛,例如在以下情况下可以使用正则表达式:

验证用户输入的内容是否符合规范(如电子邮件、电话号码、身份证号码等)。
搜索和替换文本中的特定字符串或模式。
解析和提取文本中的数据,如网页爬虫等。
对文本进行格式化和归一化。
以下是一些常用的正则表达式操作符及其含义:

  • ^:匹配字符串的开头。
  • $:匹配字符串的结尾。
  • .:匹配除了换行符之外的任意字符。
  • *:匹配前面的字符或子表达式零次或多次。
  • +:匹配前面的字符或子表达式一次或多次。
  • ?:匹配前面的字符或子表达式零次或一次。
  • []:匹配方括号中的任意一个字符。
  • |:匹配两个或多个表达式中的任意一个。
  • \:转义字符,用于匹配特殊字符本身。
    以下是一些常用的正则表达式示例:

验证电子邮件地址:

  1. const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
  2. const email = "test@example.com";
  3. if (emailRegex.test(email)) {
  4. console.log("Valid email address");
  5. } else {
  6. console.log("Invalid email address");
  7. }

提取 URL 中的域名:

  1. const url = "https://www.example.com/path/to/page.html";
  2. const domainRegex = /^https?:\/\/([^/]+)/;
  3. const domain = url.match(domainRegex)[1];
  4. console.log(domain); // 输出:www.example.com

验证手机号码:

  1. const phoneRegex = /^1[3456789]\d{9}$/;
  2. const phone = "13812345678";
  3. if (phoneRegex.test(phone)) {
  4. console.log("Valid phone number");
  5. } else {
  6. console.log("Invalid phone number");
  7. }

该分类下的相关小册推荐: