2009-06-26 8 views

risposta

5

Purtroppo non sembra che Android attualmente fornisce un modo per iniettare una funzione in SQLite, che è quello che ci serve per fare REGEXP lavoro (in particolare, avreste bisogno di una funzione utente denominato regexp()) - quindi potrebbe essere necessario selezionare più ampiamente (con una condizione LIKE più ampia della regexp desiderata) e distinguere ulteriormente il risultato "effettivo" (quelli che corrispondono realmente all'espressione regolare desiderata) con java.util.regex nell'applicazione.

-3

I motivi sono espressioni regolari compilate. In molti casi, saranno preferibili i metodi di convenienza come String.matches, String.replaceAll e String.split , ma se si ha bisogno di lavorare molto con la stessa espressione regolare , potrebbe essere più efficiente compilarlo una volta e riutilizzarlo. La classe Pattern e il suo compagno, Matcher, offrono anche più funzionalità rispetto alla piccola quantità esposta da String.

http://developer.android.com/reference/java/util/regex/Pattern.html

-2

Supponiamo che si desidera ottenere il numero di telefono che iniziano con + o nella gamma di 0-9 da contatto Tabella.

REGEXP '^[0-9].*|[+].*' 

interrogazione Sqlite3

select * from Contact where name REGEXP '^[0-9].*|[+].*' 
Problemi correlati