1

可能重复:
如何在 javascript 正则表达式匹配中忽略重音?

我有一些 javascript 作为:

var myString = 'préposition_preposition';
var regex = new RegExp("epo", "ig");
alert(myString.match(regex));

如果我在正则表达式中仅设置 epo(或仅 épo),是否可以匹配“épo”和“epo”?

4

3 回答 3

1

我最近遇到了同样的问题。正则表达式使用 ascii 运行,因此无法识别特殊字符,如éor 。ß您需要明确地将它们包含在您的正则表达式中。

用这个:

var regex = /[ée]po/gi;

提示:不要使用new Regex()它相当慢,而是直接声明正则表达式。这也解决了一些引用/转义问题。

于 2012-11-02T10:09:48.773 回答
-1

不,你不能实现这种行为。RegEx 与您提供的字符串完全匹配。计算机应该如何知道您何时époepo正在寻找什么!

但是你可以指定一可以匹配的字符new RegExp("[eé]po", "ig");

于 2012-11-02T10:08:43.313 回答
-2

尝试这个:

var str = 'préposition_preposition';
str.match(/(e|é)po/gi);
于 2012-11-02T10:10:27.800 回答