TextArea nach HTML Parsen, Regex.

janosch

Erfahrenes Mitglied
Moin!

Ich habe mir ein kleines Newsservlet mit MYSQL Anbindung programmiert in dem der USER seinen Text in ein Textarea tipt. Jetzt möchte ich alerdings nur bestimmte Zeichen wie z.B.: A-Za-z0-9 " _ ! ? ( ) \n leerzeichen erlauben . Wie sieht dazu der reguläre Ausdruck aus?

Desweiteren möchte ich ,wenn der Text mit meinen vorgaben übereinstimmt bestimmte Zeichen wie z.B.: " _ ! ? ( ) in ein HTML taugliches Format umwandeln. Wie geht das ? Gibt es dazu eine Bestimmte Klasse ?


mfg janosch

P.S. Mit regulären ausdrücken stehe ich auf dem Kriegsfuss (oder so änlich *rofl*)
 
Hallo Janosch,

wieso liest du den gesamten Text nicht einfach in einen String, machst daraus ein char-Array und fragst dann den DEZ-Wert ab (macht man glaube ich mit chr(zahl) bin mir da aber nicht sicher, müßtest Du mal nachschauen). Wenn der Wert zwischen 48 und 57 liegt hast Du eine Zahl, wenn der Wert zwischen 65 und 90 liegt hast Du einen Großen Buchstaben, zwischen 97 und 122 hast Du einen kleinen Buchstaben. Der rest:
!=33, (=40, )=41, ? = 63, \n = 32 (?, glaube ich), Leerschritt = 0 (?, glaube ich)

Gruss,

Thomas
 
Original geschrieben von janosch
Moin!

Ich habe mir ein kleines Newsservlet mit MYSQL Anbindung programmiert in dem der USER seinen Text in ein Textarea tipt. Jetzt möchte ich alerdings nur bestimmte Zeichen wie z.B.: A-Za-z0-9 " _ ! ? ( ) \n leerzeichen erlauben . Wie sieht dazu der reguläre Ausdruck aus?

mfg janosch

Erstelle Dir ein Document, welches Du dann der JTextArea zuweist.

public class YourDocument extends PlainDocument

und darin einfach

public void insertString(int offset, String s, AttributeSet attributeSet)
throws BadLocationException

implementieren, wobei Du selbst definierst, welche Zeichen eingegeben werden dürfen und welche nicht. Fertig.
 
Zurück