📜  javascript 正则表达式标志 - Javascript (1)

📅  最后修改于: 2023-12-03 14:42:36.566000             🧑  作者: Mango

Javascript 正则表达式标志

Javascript是一种强大的脚本语言,其中正则表达式是一个特别有用的功能。在Javascript中,可以使用正则表达式标志来控制正则表达式的行为。下面将介绍Javascript中常用的正则表达式标志,并说明它们是如何工作的。

i标志

'i'标志表示忽略大小写。使用'i'标志后,正则表达式会忽略字母的大小写。例如:

const regex = /hello/i;
console.log(regex.test('Hello, world!')); // true
console.log(regex.test('HELLO, WORLD!')); // true
g标志

'g'标志表示全局匹配。使用'g'标志后,正则表达式将匹配所有符合条件的字符串。例如:

const regex = /hello/g;
console.log('hello, world!'.match(regex)); // ['hello']
console.log('hello, hello, world!'.match(regex)); // ['hello', 'hello']
m标志

'm'标志表示多行匹配。使用'm'标志后,正则表达式将匹配多行文本字符串。例如:

const regex = /^hello/m;
console.log('hello, world\nHello, world'.match(regex)); // ['hello', 'Hello']
s标志

's'标志表示点号匹配任意字符。使用's'标志后,正则表达式将点号(.)匹配任意字符,包括换行符。例如:

const regex = /hello.world/s;
console.log(regex.test('hello\nworld')); // true
y标志

'y'标志表示粘性匹配。使用'y'标志后,正则表达式将从目标字符串的当前位置开始匹配。例如:

const regex = /hello/y;
console.log(regex.exec('hello, world')); // ['hello']
console.log(regex.exec('hello, world')); // null
console.log(regex.exec('world hello')); // null
u标志

'u'标志表示Unicode字符序列的匹配。使用'u'标志后,正则表达式将匹配Unicode字符。例如:

const regex = /\u{1F47B}/u;
console.log(regex.test('👻')); // true
console.log(regex.test('🐶')); // false

以上就是Javascript中常用的正则表达式标志。使用它们可以控制正则表达式的行为,从而实现更精确的字符串匹配。