私がやろうとしているのは、文字列 (html タグ、余分な空白、引用符など) をクリーンアップすることですが、句読点や文字などのラテン文字を認めたいと思いñ
ます。これを試しましたが、期待どおりに機能しない理由がわかりません:
コード
//Removing special characters
$str = preg_replace('/[^;\sa-zA-Z0-9áéíóúüñÁÉÍÓÚÜÑ]+/', '', $str);
//Deleting extra white spaces
$str = preg_replace('/\s+/', ' ', $str);
例
in: Película; Films; @Cine; Añoranza; <html></body>foo "bar ";
out: pelcula; Films; Cine; Aoranza; foo bar
expected: Película; Films; Cine; Añoranza; foo bar
質問:
私のコードの問題は何ですか?どうすれば修正できますか? ラテン文字の部分だけが表現に取り組んでいないからです。
プラス:両方の正規表現を 1 つにマージするにはどうすればよいですか?