You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Robert Thorman (JIRA)" <ji...@apache.org> on 2016/06/20 18:50:58 UTC
[jira] [Comment Edited] (FLINK-3318) Add support for quantifiers to
CEP's pattern API
[ https://issues.apache.org/jira/browse/FLINK-3318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15340166#comment-15340166 ]
Robert Thorman edited comment on FLINK-3318 at 6/20/16 6:50 PM:
----------------------------------------------------------------
So would the idea here be something like the following?
Pattern.begin("start").followedBy("next?").followedBy("third{1,3}").followedBy("end*");
I'm not sure if the capture group () delimiters should be applied to make it more obvious that the Kleene start notation applies to the terms, like this:
Pattern.begin("start").followedBy("(next)?").followedBy("(third){1,3}").followedBy("(end)(*");
I wouldn't mind helping with this.
was (Author: rt2357):
So would the idea here be something like the following?
Pattern.begin("start").followedBy("next?").followedBy("third{1,3}").followedBy("end*");
I'm not sure if the capture group () delimiteres should be applied to make it more obvious that the Kleene start notation applies to the terms, like this:
Pattern.begin("start").followedBy("(next)?").followedBy("(third){1,3}").followedBy("(end)(*");
I wouldn't mind helping with this.
> Add support for quantifiers to CEP's pattern API
> ------------------------------------------------
>
> Key: FLINK-3318
> URL: https://issues.apache.org/jira/browse/FLINK-3318
> Project: Flink
> Issue Type: Improvement
> Components: CEP
> Affects Versions: 1.0.0
> Reporter: Till Rohrmann
> Priority: Minor
>
> It would be a good addition to extend the pattern API to support quantifiers known from regular expressions (e.g. Kleene star, ?, +, or count bounds). This would considerably enrich the set of supported patterns.
> Implementing the count bounds could be done by unrolling the pattern state. In order to support the Kleene star operator, the {{NFACompiler}} has to be extended to insert epsilon-transition between a Kleene start state and the succeeding pattern state. In order to support {{?}}, one could insert two paths from the preceding state, one which accepts the event and another which directly goes into the next pattern state.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)