Código PHP:
function ParserAlfa($Str_input,$Ext='') {
if (strlen($Ext)>0) $Ext = ',' . $Ext;
$Pattern = '/[^A-Za-z0-9' . $Ext .']/';
return preg_replace($Pattern,'', $Str_input );
}
uso
ParserAlfa($cadena,'-.,')
si te fijas en el segundo parametro puedes especificar los caracteres especiales que quieres que pasen, sinos solo filtrara los a-Z y 0 al 9