From 93d6f9fc54ea94664aa8623ace9963940a82a516 Mon Sep 17 00:00:00 2001 From: David Huynh Date: Tue, 6 Apr 2010 06:18:07 +0000 Subject: [PATCH] Better error message for bad regular expressions in GEL. git-svn-id: http://google-refine.googlecode.com/svn/trunk@388 7d457c2a-affb-35e4-300a-418c747d4874 --- src/main/java/com/metaweb/gridworks/gel/Parser.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/metaweb/gridworks/gel/Parser.java b/src/main/java/com/metaweb/gridworks/gel/Parser.java index e0ed9ff70..887ad3498 100644 --- a/src/main/java/com/metaweb/gridworks/gel/Parser.java +++ b/src/main/java/com/metaweb/gridworks/gel/Parser.java @@ -140,8 +140,13 @@ public class Parser { } else if (_token.type == TokenType.Regex) { RegexToken t = (RegexToken) _token; - eval = new LiteralExpr(Pattern.compile(_token.text, t.caseInsensitive ? Pattern.CASE_INSENSITIVE : 0)); - next(false); + try { + Pattern pattern = Pattern.compile(_token.text, t.caseInsensitive ? Pattern.CASE_INSENSITIVE : 0); + eval = new LiteralExpr(pattern); + next(false); + } catch (Exception e) { + throw makeException("Bad regular expression (" + e.getMessage() + ")"); + } } else if (_token.type == TokenType.Number) { eval = new LiteralExpr(((NumberToken)_token).value); next(false);