3

すべての特殊文字と句読点からクリーンアップする必要がある多くの文があります (文字と数字とスペースだけを保持したい)。たとえば、次のようになります。

$string = "TB Avrupa ve Türkiye'nin en iyi oranlari ile Lider Bahis Sitesi!!";
$final_title = preg_replace('/[^a-z]+/i', '', $string); 

これにより、スペースを保持する必要があるすべて (スペースを含む) が削除されます。これを実現するために、前の行に何かを追加できますか??

期待される出力:

TB Avrupa ve Türkiyenin en iyi oranlari ile Lider Bahis Sitesi
4

4 に答える 4

4

I want to keep just the letters and numbers and spaces

この正規表現を使用して、英字、数字、およびスペース以外のすべてを削除できます。

preg_replace('/[^a-z\d ]+/i', '', $string); 
于 2013-10-25T08:21:09.980 に答える
2

保持したい文字を含めるだけです:

'/[^a-z0-9 ]+/i'
于 2013-10-25T08:21:12.927 に答える
1

正規表現を次のように変更する必要があります。

$final_title = preg_replace('/[^a-z0-9 ]+/i', '', $string);

これにより、数字とスペースが保持されます。


あなたの要件が何であるか正確にはわかりませんが、ü一部の言語では有効な文字です.

それらも保持したい場合は、次のような正規表現を作成する必要があります。

$final_title = preg_replace('/[\p{L}0-9 ]+/i', '', $string);
于 2013-10-25T08:21:09.123 に答える
0

これを試して:

preg_replace('/[^A-Z^a-z^0-9^şŞıİçÇöÖüÜĞğ ]+/i', '', $string); 
于 2013-10-25T08:32:45.830 に答える