变音符号适用于变音符号

时间:2014-02-25 14:51:21

标签: javascript regex forms

我正在使用JS Animated Contact Form这一行验证正则表达式:

rx:{".name":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'}, other fields...

我刚刚发现,我不能输入像“Müller”这样的名字。正则表达式不接受这个。我该怎么办,还允许变音符号?

5 个答案:

答案 0 :(得分:23)

你应该在你的正则表达式unicode代码中使用\u0080等字符。 对于德语,我找到了下表:

Zeichen     Unicode
------------------------------
Ä, ä        \u00c4, \u00e4
Ö, ö        \u00d6, \u00f6
Ü, ü        \u00dc, \u00fc
ß           \u00df

(来源http://javawiki.sowas.com/doku.php?id=java:unicode

答案 1 :(得分:15)

尝试使用:

/^[\u00C0-\u017Fa-zA-Z'][\u00C0-\u017Fa-zA-Z-' ]+[\u00C0-\u017Fa-zA-Z']?$/

我已将unicode范围\u00C0-\u017F添加到每个方括号组的开头。

鉴于/^[\u00C0-\u017FA-Za-z]+$/.test("aeiouçéüß")返回true,我预计它应该有用。

归功于https://stackoverflow.com/a/11550799/940252

答案 2 :(得分:0)

\ uXXXX方法的问题是,所有正则表达式都不支持它。例如,Visual C ++不支持它。 在那里,你需要枚举实际的字母。

我建议使用像https://www.regexbuddy.com/这样的工具,它尽可能多地了解各种风格。

答案 3 :(得分:0)

我用过

  

A-ZA-Z-ÁÀȦÂÄǞǍĂĀÃÅǺǼǢĆĊĈČĎḌḐḒÉÈĖÊËĚĔĒẼE̊ẸǴĠĜǦĞGĢĤḤáàȧâäǟǎăāãåǻǽǣćċĉčďḍḑḓéèėêëěĕēẽe̊ẹǵġĝǧğgģĥḥÍÌİÎÏǏĬĪĨỊĴĶǨĹĻĽĿḼMM̄'NŃNṄN̈ŇN̄ÑŅṊÓÒȮȰÔÖȪǑŎŌÕȬŐỌǾƠíìiîïǐĭīĩịĵķǩĺļľŀḽmm̄ʼnńnṅn̈ňn̄ñņṋóòôȯȱöȫǒŏōõȭőọǿơP̄ŔŘŖŚŜṠŠŞṢŤŢṬṰÚÙÛÜǓŬŪŨŰŮỤẂẀŴẄÝỲŶŸȲỸŹŻŽẒǮp̄ŕřŗśŝṡšşṣťţṭṱúùûüǔŭūũűůụẃẁŵẅýỳŷÿȳỹźżžẓǯßœŒçÇ

几乎支持欧洲的所有字符。 Source of truth

答案 4 :(得分:0)

我想出了不同范围的组合:

[A-Za-zÀ-ž\u0370-\u03FF\u0400-\u04FF]

但是我看到它缺少@SambitD建议的某些字母,请参阅:https://rubular.com/r/2g00QJK4rBS8Y4

相关问题