1

文字列から非文字 ( %¤#£?|など) をフィルタリングする簡単な正規表現はありますか? すべての文字 ( æøåôöñなどの特別なものも) を受け入れたい場合。正規表現にすべての特殊文字を明示的に含める必要がありますか、それともよりスマートな方法がありますか

$filteredString = preg_replace('/[^a-zæøåÆØÅöôÖÔ 0-9]/i', '', $orgString);

ps。ご覧のとおり、文字以外の唯一の文字として空白を受け入れたいと思います

pps。また、大文字と小文字を区別しない「i」は、特殊文字には適用されないようです

4

2 に答える 2

0

\w単語文字 (アンダースコアも含む) に使用できます。またu、Unicode 文字の修飾子を使用することをお勧めします。

/[^\w\sæøåÆØÅöôÖÔ]/iu
于 2013-08-08T08:06:18.590 に答える