0

検索フィールドでは、通常の文字とドイツ語の変異母音 (ä、ö、ü、Ä、Ö、Ü、ß など) のみを許可する必要があります。

私の正規表現は次のようになります。

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

置き換え:

phrase.replace(regex, "")

交換前:

Ärzte

交換後:

rzte

残念ながら、変異した母音は置換によって削除されています。これらの文字を保持するための提案は大歓迎です。

前もって感謝します。

4

1 に答える 1

3

この問題は、文字セットが UTF-8 に設定されていない可能性が高いです。文字セットを修正する必要がありますが、文字を直接使用する代わりにその正規表現に16進コードを使用し、そこにコメントを残して、16進コードの目的を覚えておくことをお勧めします。

これが機能するかどうかを確認します

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

ここから他の16進エスケープを見つけることができますhttp://www.javascripter.net/faq/accentedcharacters.htm

于 2016-02-29T08:42:17.503 に答える