Welche integrierten Regex-Zeichenklassen werden von Java unterstützt

8

... bei Verwendung in Mustern wie "\p{someCharacterClass}" .
Ich habe einige benutzt / gesehen:

  • Lower
  • Obere
  • InCombiningDiacriticalMarks
  • ASCII

Was ist die definitive Liste aller unterstützten integrierten Zeichen? Wo ist es dokumentiert? Was sind die genauen Bedeutungen?

Bearbeitet ...

Es scheint eine Menge "RTFM" -Antworten zu geben, die sich auf das Javadoc für Pattern beziehen. Das ist der erste Ort, vor dem ich diese Frage gestellt habe. Nur damit alle klar sind, erwähnt das Javadoc für Pattern keine der oben aufgeführten Klassen.

Die "richtige" Antwort wird "InCombiningDiacriticalMarks" irgendwo auf der Seite erwähnen und wird keine vage Bezugnahme auf "Unicode Standards" sein.

    
Bohemian 27.12.2011, 23:20
quelle

5 Antworten

9

Die Dokumentation für Pattern lautet in der Abschnitt "Unicode-Unterstützung":

  

Die unterstützten Kategorien sind diejenigen des Unicode-Standards in der von der Klasse Character angegebenen Version. Die Kategorienamen sind diejenigen, die sowohl normativ als auch informativ im Standard definiert sind. Die von Pattern unterstützten Blocknamen sind die gültigen Blocknamen, die von UnicodeBlock.forName akzeptiert und definiert werden.

Die Dokumentation für UnicodeBlock.forName gibt Folgendes an:

  

Blocknamen werden durch den Unicode-Standard festgelegt.

Auf Ссылка gibt es die FAQ Wo? kann ich die definitive Liste der Unicode-Blöcke finden? :

  

A: Die Unicode-Blöcke und ihre Namen sind ein normativer Teil des Unicode-Standards. Die genaue Liste wird immer in einer der Dateien der Unicode-Zeichendatenbank gepflegt, Blocks.txt .

Schließlich gibt es in Blocks.txt die Zeile:

%Vor%

Diese Zeichen finden Sie im Kombinieren von diakritischen Marken -Codekarten (von Unicode 6.0 Character Code Charts ).

    
Greg Hewgill 28.12.2011, 09:26
quelle
1

Die Spezifikation ist Ссылка . In einigen Fällen bezieht es sich auf TUS für eine bestimmte Version. Sie finden dieses Material unter Ссылка .

    
bmargulies 27.12.2011 23:22
quelle
1

Die Muster-API sagt, dass sie sich an den regulären Ausdruck 1 halten soll, wie von Ссылка

definiert

Es gibt drei nette Tabellen (suche UCD.html) und sieh dir UCD.html selbst an.

    
Joop Eggen 28.12.2011 00:09
quelle
0

Suchen Sie in den Javadocs nach der Klasse Muster .

    
duffymo 27.12.2011 23:22
quelle
0

Diese Seite enthält einige gute Details für einige populäre Klassen wie:

  • \p{L} oder \p{Letter} : jede Art von Buchstaben aus jeder Sprache.
  • \p{M} oder \p{Mark} : ein Zeichen, das mit einem anderen Zeichen kombiniert werden soll (z. B. Akzente, Umlaute, umschließende Kästchen usw.).
  • \p{N} oder \p{Number} : jede Art von numerischen Zeichen in einem Skript.
Justin Harris 10.09.2013 18:25
quelle

Tags und Links