Regexp ein string enthält nur Buchstaben , zahlen und Leerzeichen in Java

Voraussetzung: String sollte nur aus Buchstaben , zahlen und Leerzeichen.
Ich haben, um einen sauberen Namen zu einem anderen API.

Implementierung: Java

Ich hatte diese für meine Anforderung

public static String getCleanFilename(String filename) { 
if (filename == null) { 
return null; 
} 
Rückkehr mit dem Namen.replaceAll("[^A-Za-z0-9 ]",""); 
} 

Dies funktioniert gut für einige meiner testcase , aber wissen wollen, fehlen mir irgendwelche Randbedingungen, oder einen besseren Weg (in der Leistung) zu tun.

Wenn Sie Validierung einen Dateinamen sollten Sie nicht ändern.
Also, was würden Sie wollen, zu verwenden für "____".
Dies wird fast sicher piss off Benutzer. Nur erkennen die negativen und lassen Sie die Benutzer wissen, was Sie können und was nicht.
Voraussetzung ist jedoch , dass ich haben, um einen sauberen Namen zu einem anderen API. (weshalb eine änderung erforderlich ist)
möglicherweise verwenden Sie nicht word-Muster \W es Unterstrich enthält, wie gut. siehe hier download.oracle.com/javase/1.4.2/docs/api/java/util/regex/...

InformationsquelleAutor sat | 2011-02-14

Schreibe einen Kommentar