JavaScript正则表达式对象
JavaScript正则表达式对象是一种特殊的字符串对象,它们可以用来搜索、替换和检查文本。它们也可以用来验证用户输入的数据,例如电子邮件地址或电话号码。
使用方法
JavaScript正则表达式对象可以使用两种方式创建:
- 使用正则表达式字面量:var re = /ab+c/;
- 使用RegExp构造函数:var re = new RegExp("ab+c");
正则表达式对象提供了一些方法,用于搜索、替换和检查文本:
- test():用来检查一个字符串是否符合正则表达式的规则,返回true或false。
- exec():用来检索字符串中指定的值,返回匹配的值,如果没有匹配,则返回null。
- match():用来检索字符串中指定的值,返回匹配的值,如果没有匹配,则返回null。
- replace():用来替换字符串中指定的值,返回替换后的字符串。
- search():用来搜索字符串中指定的值,返回匹配的位置,如果没有匹配,则返回-1。
- split():用来将字符串分割为子字符串,返回一个字符串数组。
实例
//创建正则表达式 var re = /ab+c/; //检查字符串是否符合正则表达式 var str = "abc"; var result = re.test(str); //检索字符串中指定的值 var str = "The best things in life are free"; var result = str.match(/e/g); //替换字符串中指定的值 var str = "The best things in life are free"; var result = str.replace(/free/g, "cheap"); //搜索字符串中指定的值 var str = "The best things in life are free"; var result = str.search(/free/); //将字符串分割为子字符串 var str = "The best things in life are free"; var result = str.split(" ");
使用场景
JavaScript正则表达式对象可以用于验证用户输入的数据,例如电子邮件地址或电话号码:
//验证电子邮件地址 var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/; var str = "example@gmail.com"; var result = re.test(str); //验证电话号码 var re = /^\d{3}-\d{3}-\d{4}$/; var str = "123-456-7890"; var result = re.test(str);
正则表达式也可以用来搜索、替换和检查文本:
//搜索文本 var re = /\d+/; var str = "I have 10 apples"; var result = str.search(re); //替换文本 var re = /apples/; var str = "I have 10 apples"; var result = str.replace(re, "oranges"); //检查文本 var re = /\d+/; var str = "I have 10 apples"; var result = re.test(str);