Ich habe mal wieder ein Problem mit einem meiner Hassthemen, Regex.
Gegeben ist folgender Ausschnitt einer HTML-Datei bei dem ich auf die einzelnen Termine den Match haben möchte.
Ich habe folgenden Code:
Als Fehlermeldung bekomme ich:
Die Fehlermeldung sagt zwar recht eindeutig, dass der Fehler in meinem Regex liegt, allerdings ist mir der Grund nicht klar und ich finde bei Google auch keine Hinweise zu dem Problem. Grundsätzlich sollte es doch kein Problem sein, wenn da Anführungsstriche im String sind.
Gegeben ist folgender Ausschnitt einer HTML-Datei bei dem ich auf die einzelnen Termine den Match haben möchte.
Code:
"socialHookFacebook":"h**p://facebook.com/sharer.php?u=h**p%3A%2F%2Fdoodle.com%2F...","state":"OPEN","fcOptions":[{"id":0,"allDay":true,"start":1354320000,"end":1354406399},{"id":1,"allDay":true,"start":1355529600,"end":1355615999},{"id":2,"allDay":true,"start":1355702400,"end":1355788799},{"id":3,"allDay":true,"start":1356134400,"end":1356220799},{"id":4,"allDay":true,"start":1356739200,"end":1356825599},{"id":5,"allDay":true,"start":1357344000,"end":1357430399},{"id":6,"allDay":true,"start":1357516800,"end":1357603199},],"prettyUrl":"http://doodle.com/..."
Ich habe folgenden Code:
Code:
String appointmentRegex = "/{\"id\":([0-9]||[0-9][0-9]),\"allDay\":true,\"start\":[0-9]{10},\"end\":[0-9]{10}}/g";
Pattern p = Pattern.compile(appointmentRegex, Pattern.MULTILINE);
Matcher m = p.matcher(input);
while (m.find())
{
appendTextField(m.group(0));
}
Als Fehlermeldung bekomme ich:
E/AndroidRuntime(2819): java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 1:
E/AndroidRuntime(2819): {"id"[0-9]||[0-9][0-9]),"allDay":true,"start":[0-9]{10},"end":[0-9]{10}}
E/AndroidRuntime(2819): ^
E/AndroidRuntime(2819): at java.util.regex.Pattern.compileImpl(Native Method)
E/AndroidRuntime(2819): at java.util.regex.Pattern.compile(Pattern.java:407)
E/AndroidRuntime(2819): at java.util.regex.Pattern.<init>(Pattern.java:390)
E/AndroidRuntime(2819): at java.util.regex.Pattern.compile(Pattern.java:374)
Die Fehlermeldung sagt zwar recht eindeutig, dass der Fehler in meinem Regex liegt, allerdings ist mir der Grund nicht klar und ich finde bei Google auch keine Hinweise zu dem Problem. Grundsätzlich sollte es doch kein Problem sein, wenn da Anführungsstriche im String sind.