2010-10-27 6 views
-1

Comment puis-je supprimer , , ° comme des caractères spéciaux d'une chaîne en PHPRetirer HTML charcters spéciales

En fait, je dois lire le contenu d'un fichier texte et la nécessité de supprimer les caractères spéciaux html sauf les alphabets et les chiffres de ce

+2

S'il vous plaît fournir plus d'informations: Sous quelle forme ces caractères dans la chaîne? Aussi, qu'est-ce qui les rend "spéciaux" dans votre contexte spécifique? –

+1

Définir "like". Juste ces caractères? Juste des choses qui ne sont pas ASCII? Juste des choses qui ne reposent pas sur la ligne de base? – Quentin

+0

Pourquoi voulez-vous les supprimer quand même? Dans 99% des cas, la façon de traiter les caractères spéciaux est de leur échapper, pas de les jeter. – Quentin

Répondre

3

Ou, si vous souhaitez utiliser une expression régulière, utilisez:

$str = 'a“bc”def°g'; 
$str = preg_replace("[^A-Za-z0-9 ]", "", $str); 
+0

alpahnumerics et espaces dans la chaîne – SW4

0

une façon serait (par exemple)

$str = 'a“bc”def°g'; 
$special = array('“','”','°'); 
$str = str_replace($special,'',$str); 
0

par le edit- pour lire le contenu du fichier, supprimez tout sauf caractères alphanumériques et caractères d'espace puis écrire le résultat dans le même fichier, vous pouvez utiliser:

$file= "yourfile.txt"; 
$file_content = file_get_contents($file); 
$fh = fopen($file, 'w'); 
$file_content=preg_replace("[^A-Za-z0-9 ]", "", $file_content); 
fwrite($fh, $file_content); 
fclose($fh); 
+0

Cette fonction a été désapprouvée depuis PHP 5.3.0 Il est fortement déconseillé de se fier à cette fonctionnalité - http://php.net/ereg_replace (et la question ne spécifie pas de caractères d'espace) – Quentin

+0

@ David Dorward, désolé - signifie preg_replace, ont corrigé – SW4