正则表达式允许法语文本和英文文本?

Suv*_*rya 7 javascript regex

我想使用一个允许的正则表达式

  1. 英文文本没有特殊字符.
  2. 法语文本没有特殊字符.

在这两种语言中,它总是会禁止使用@,#,%等特殊字符.

我尝试过以下代码:

if (this.value.match(/[^a-zA-Z0-9 ]/g)) {
    this.value = this.value.replace(/[^a-zA-Z0-9 ]/g, '');
}
Run Code Online (Sandbox Code Playgroud)

它适用于英文文本,但问题是当我提供像éléphant这样的法语文本时,它会将法语字符视为特殊字符,并删除法语字符.所以éléphant变成了lphant.

有没有办法让正则表达式中的法语字符?

非常感谢提前.

mor*_*rtb 11

快速解决方案

/[^a-zA-Z0-9 àâäèéêëîïôœùûüÿçÀÂÄÈÉÊËÎÏÔŒÙÛÜŸÇ]/
Run Code Online (Sandbox Code Playgroud)

参考: 法国人物清单

希望这可以帮助


Sam*_*m G 5

最简化的解决方案:

\n\n
/[^a-zA-Z\xc3\x80-\xc3\xbf]/  \n
Run Code Online (Sandbox Code Playgroud)\n\n

(或者)

\n\n
/[\\w\xc3\x80-\xc3\xbf]/       // Note: This will allow "_" also\n
Run Code Online (Sandbox Code Playgroud)\n\n

上述任何正则表达式都适用于您的情况。

\n