Originariamente inviato da uMoR
Per includere nel range di caratteri da non sostituire i numeri č giusto cosė ?
[...]
Una classe di caratteri č racchiusa tra parentesi quadre, quindi per escludere un certo insieme di caratteri devi inserirli tutti nella stessa classe. Quella che hai scritto tu cercava un carattere "non alfabetico" seguito da uno o pių caratteri "non numerici".
Lo strtolower lo metti per il riconoscimento? Perchč la regexp per come č impostata č case insensitive.

Codice PHP:
$tmp preg_replace('/[^a-z0-9]+/i'$separatorestrtolower($stringa));

// e poi continui ad aggiungere i caratteri che vuoi preservare
$tmp preg_replace('/[^a-z0-9āč]+/i'$separatorestrtolower($stringa));

// eventualmente \\w (\\W il suo negato) č una classe che racchiude tutti i caratteri alfanumerici
 //(quindi anche le accentate) e l'underscore "_"
$tmp preg_replace('/\\W+/i'$separatorestrtolower($stringa));