javascript 正则表达式
时间: 2025-01-22 08:04:39 浏览: 20
JavaScript 正则表达式使用方法
创建正则表达式对象
有两种方式可以创建正则表达式对象:
字面量形式 定义一个正则表达式直接量,然后可以直接调用该正则表达式进行操作。例如:
var r = /\b\w/gi;
这里
/\b\w/gi
表示以单词边界开始的任意字符,并忽略大小写[^1]。构造函数形式 可以通过
RegExp()
构造函数来动态创建正则表达式对象。这种方式适用于需要在运行时构建模式的情况。var reg = new RegExp('js', 'gi');
上述代码创建了一个全局且不区分大小写的正则表达式实例[^2]。
常见修饰符及其含义
常见的正则表达式修饰符有三个:g
(global),i
(ignore case) 和 m
(multiline)。
g
: 表示执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)i
: 执行对大小写不敏感的匹配m
: 多行模式下处理输入字符串,在这种情况下,'^'和'$'分别匹配每一行的开头和结尾而不是整个字符串的开头和结尾
测试与应用
一旦有了正则表达式对象,就可以利用它来进行各种字符串操作,比如测试、替换以及提取子串等。
测试是否存在匹配项
使用 .test()
方法可判断目标字符串是否含有符合给定模式的内容。
var regex = /hello/;
console.log(regex.test("Hello world")); // 输出 true 或 false
替换特定内容
.replace()
方法能够依据指定规则替换成其他内容,常用来做关键词过滤等功能实现。
function filterSensitiveWords(text) {
var sensitiveWords = ['bad', 'evil', 'dangerous'];
var pattern = new RegExp(sensitiveWords.join('|'), 'gi');
return text.replace(pattern, '***');
}
// 示例用法
console.log(filterSensitiveWords("This is a bad word.")); // This is a *** word.
console.log(filterSensitiveWords("Evil is dangerous.")); // *** is ***.
此段代码展示了如何基于预设列表中的敏感词汇进行屏蔽处理[^4]。
提取符合条件的数据片段
可以通过 .match()
来获取所有的匹配结果作为数组返回。
var str = "JavaScript JAVA";
var matches = str.match(/\b\w+/gi);
console.log(matches); // ["JavaScript", "JAVA"]
这段例子说明了怎样从一段文字里面找出所有由字母组成的词语并组成一个新的数组。
阅读全文
相关推荐








