2012-10-13 17 views
5

Jestem dość zaskoczony, że gdy natknę się na J2ME, nie ma normalnego wyrażenia regularnego, którego używam w J2SE.Jak korzystać z biblioteki regexp-me?

Znalazłem J2ME obsługiwane regex Biblioteka: regexp-me

Ktoś może mi powiedzieć jak uzyskać początkową/końcową pozycję lub coś podobnego matcher.group() (w J2SE), z tej biblioteki. Widzę, że ma on funkcję powrotu Boolean 'match', ale to nie jest to, czego chcę.

Co więcej, używają nawiasów klamrowych z getParenStart (0) w celu pobrania dopasowanego wyrażenia regularnego, ale nigdy nie używam tego w J2SE, nie mogę zrozumieć, co robi.

Na przykład:

regex = a.+b 

Łańcuch, że chcę, aby szukać w:

kkkkacccb789 

Chcę wiedzieć pozycję acccb lub najlepiej dostać cały dopasowany ciąg, acccb się z strunowy.

Odpowiedz

1

Wygląda na to, że już to wymyśliłeś. Ten fragment zrobi meczu chcesz i umieścić część dopasowanie łańcucha w zmiennej lokalnej matchedSubstring

RE regex = new RE("a.+b"); 
r.match("kkkkacccb789"); 
String matchedSubstring = r.getParen(0); 
+0

Dzięki, właśnie testowane, to działa, myślałem, że nie trzeba zadzwonić regex.match przed regex .getParen (Myślałem, że regex.getParent już wewnętrznie wywołuje regex.match), dlatego mój kod nie zadziałał. – GMsoF

+0

Ale czy może pasować do więcej niż jednego wystąpienia? Wygląda na to, że nie działa w ten sposób. – GMsoF