2012-10-13 11 views
5

Sono abbastanza sorpreso dal fatto che quando mi imbatto in J2ME non abbia la regex normale che ho usato in J2SE.Come usare la libreria regexp-me?

ho trovato questo J2ME sostenuto biblioteca regex: regexp-me

Chiunque può dirmi come ottenere il/posizione di partenza fine o qualcosa di simile matcher.group() (in J2SE), da questa libreria. Vedo che ha una funzione di ritorno booleana 'match', ma non è quello che voglio.

Inoltre, usano la parentesi graffa con getParenStart (0) per recuperare la regex corrispondente, ma non uso mai una cosa del genere prima in J2SE, non riesco davvero a capire cosa sta facendo.

Ad esempio:

regex = a.+b 

La stringa che voglio cercare in:

kkkkacccb789 

Voglio conoscere la posizione del acccb o, preferibilmente, ottenere l'intero testo trovato, acccb fuori stringa.

risposta

1

Sembra che tu l'abbia già capito. Questo frammento farà la partita che si desidera, e mettere la parte corrispondente della stringa nella variabile locale matchedSubstring

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

Grazie, appena testato, funziona, ho pensato che non abbiamo bisogno di chiamare regex.match prima regex .getParen (Pensavo che regex.getParent chiamasse già regex.match internamente), ecco perché il mio codice non funzionava. – GMsoF

+0

Ma può abbinare più di una occorrenza? Sembra che non funzioni in questo modo. – GMsoF