重複の可能性:
URL 正規表現にアラビア文字を追加する方法
私は答えなしで数時間検索しています。
英語だけでなくアラビア文字でも preg_replace をどのように使用しますか?
これは私のコードは英語です
$string = preg_replace ( "/&([a-zA-Z])(uml|acute|grave|circ|tilde|ring),/", "", $string );
$string = preg_replace ( "/[^a-zA-Z0-9_.-]/", "", $string );
回答のいくつかは、私がこのコードを使用することを示唆しています:
$string = preg_replace ( "/&([أ-يa-zA-Z])(uml|acute|grave|circ|tilde|ring),/u", "", $string );
$string = preg_replace ( "/[^أ-يa-zA-Z0-9_.-]/u", "", $string );
私はそれをテストしましたが、動作します。しかし、これは実際にphpで機能しますか? すべてのアラビア文字が含まれていますか? すべてのアラビア文字を含めるより良い方法はありますか?
私がコードでやろうとしていることは次のとおりです。
文字列内のすべての文字を有効な SEO フレンドリーな文字に置き換えます。
http://www.unicodemap.orgに基づくこのコードを使用して問題を解決しました。ブライアン、ありがとう。
$string = preg_replace ( "/&([\x{0600}-\x{06FF}a-zA-Z])(uml|acute|grave|circ|tilde|ring),/u", "", $string );
$string = preg_replace ( "/[^\x{0600}-\x{06FF}a-zA-Z0-9_.-]/u", "", $string );