正規表現の文字列表現を取り込み、それを構文木に変換して簡単にプログラムで操作できるライブラリが必要です。正規表現を構文木に構文解析するためのJavaライブラリ
(?\ sの)BLA [-z]は
のようなものに:変換と何か
PARENTHESIS CHAR:SPACE WILD WORD:bla CHAR:a-z
正規表現の文字列表現を取り込み、それを構文木に変換して簡単にプログラムで操作できるライブラリが必要です。正規表現を構文木に構文解析するためのJavaライブラリ
(?\ sの)BLA [-z]は
のようなものに:変換と何か
PARENTHESIS CHAR:SPACE WILD WORD:bla CHAR:a-z
は何を探していることは右、構文パーサであるように見えますか?私はANTLR(http://www.antlr.org/)の表情を与えるだろう
、あなたは文法を作成することができ、それはあなたが歩くことができる構文木を生成し、翻訳など
Parboiledのように見えますあなたがしたいことのための良い選択。
antlrやjavaccよりも簡単に文法を書くことができます。
サンプル:
Rule Digit()
{
return CharRange('0', '9');
}
Rule Integer()
{
return OneOrMore(Digit());
}
Rule WhiteSpace()
{
return ZeroOrMore(AnyOf(" \t"));
}
Rule NToMQuantifier()
{
return Sequence(
'{',
WhiteSpace(),
Integer(),
Optional(
WhiteSpace(),
Integer()
),
'}'
);
}
Rule OtherQuantifiers()
{
return Sequence(AnyOf("+?*"), Optional(AnyOf("+?")));
}
Rule Quantifier()
{
return FirstOf(OtherQuantifiers(), NToMQuantifier());
}
私はない正規表現を使用すると、正規表現の構文パーサを探しています。私はそれをもっと明確にするために質問を修正しました。 –
そしていくつかの正規表現文法があります。 –
@jp誰も "with"と言ったことはありません。正規表現の文法はいくつかあります。 –