0

在搜索字段中,应该只允许使用常规字符和德语变异元音,如 ä、ö、ü、Ä、Ö、Ü 和 ß。

我的正则表达式看起来像:

/(<([^>]+)>)|[^a-zA-Z0-9äöüÄÖÜß\s]/ig

替换:

phrase.replace(regex, "")

更换前:

Ärzte

更换后:

rzte

不幸的是,变异的元音被替换删除了。任何保留这些字符的建议表示赞赏。

提前致谢。

4

1 回答 1

3

问题很可能是字符集未设置为 UTF-8。您应该修复您的字符集,但更好的做法可能是对该正则表达式使用十六进制代码,而不是直接使用该字符,然后在其中留下一些注释,以便您记住十六进制代码的用途。

检查这是否有效

phrase.replace(/(<([^>]+)>)|[^a-z0-9\xE4\xF6\xFC\xC4\xD6\xDC\xDF\s]/ig, "\n")

您可以从这里找到其他一些十六进制转义符http://www.javascripter.net/faq/accentedcharacters.htm

于 2016-02-29T08:42:17.503 回答