/** * Creates a pattern from the given string. * * @param semgrex the pattern string * @return a SemgrexPattern for the string. */ public static SemgrexPattern compile(String semgrex, Env env) { try { SemgrexParser parser = new SemgrexParser(new StringReader(semgrex + "\n")); SemgrexPattern newPattern = parser.Root(); newPattern.env = env; newPattern.patternString = semgrex; return newPattern; } catch (ParseException ex) { throw new SemgrexParseException("Error parsing semgrex pattern " + semgrex, ex); } catch (TokenMgrError er) { throw new SemgrexParseException("Error parsing semgrex pattern " + semgrex, er); } }