首页 > 解决方案 > 如何在正则表达式中同时使用 /g 和 /i 以使我的搜索在整个搜索中重复,并在 JavaScript 中忽略大小写敏感?

问题描述

我想从字符串中删除空格、逗号和数字,并忽略区分大小写。下面是我的正则表达式,我无法在我的表达式中同时使用 /i(删除区分大小写)和 /g(重复搜索)。

正则表达式

var str = "My age is 0, 0 si ega ym."
str.replace(/[,\s\d.]+/g,'')

在上面的表达式中我应该把 /i 放在哪里?

标签: javascriptregex

解决方案


您可以以任何顺序组合多个标志并放在模式之后(在 之后/)。


/ pattern / flags
|   |     |   |__  Flags
|   |     |
|   |     |_______ End of regex literal
|   |     
|   |_____________ pattern to match
|
|_________________ start of regex literal

str.replace(/[,\s\d.]+/gi,'')

来自MDN 文档

正则表达式有六个可选标志,允许使用全局和不区分大小写的搜索等功能。这些标志可以单独使用或以任何顺序一起使用,并作为正则表达式的一部分包含在内

参考:带有标志的正则表达式


推荐阅读