Ich versuche, eine beliebige Aufzählungsliste in einem freien Text Dokument zu entsprechen. Aufzählungslisten werden als Zahl oder Kleinbuchstaben definiert, der ein Worttrennzeichen vorangestellt wird. So zum Beispieljava regulären Ausdruck finden Aufzählungslisten
1. item a
2. item b
Ich verwende den folgenden Code, um die Kugeln zu finden:
Pattern p1 = Pattern.compile("\\s[\\d][\\.\\)]\\s");
Das funktioniert gut, solange die Aufzählungsliste von einstelligen Elementen bestehen. Doch sobald ich mehrstelligen Aufzählungen versuchen, wird es nicht funktionieren (Beispiel 12. item c 13. item d
) Ich versuchte, das das Muster zu
Pattern p1 = Pattern.compile("\\s[\\d]+[\\.\\)]\\s");
oder
Pattern p1 = Pattern.compile("\\s[\\d]\\+[\\.\\)]\\s");
Meine Interpretation der regex Sprache zu ändern ist dass dies zu jedem Fall passt, in dem 1 oder mehr Ziffern vor einem "." stehen. Aber das funktioniert nicht.
Kann jemand sehen, was ich falsch mache?
Btw, könnten Sie definieren 'Aber das work.' nicht? – Thomas
Das ist eine seltsame Definition von 'Bullet-Liste'. Was es wirklich bedeutet, ist eine Liste, deren Elemente durch 'bullet' Zeichen eingeführt werden. Was Sie suchen, ist Artikel in Buchstaben oder nummerierten Listen. – EJP