私たちプログラマーが次のようなタスクのためにプログラムで使用する正規表現に気付きました
- メールアドレスの検証
- IP 検証
- ...
Automataで使用される正規表現とは少し異なります(私が間違っていなければ)。
ところで、私は IP 検証用の NFA を設計し、最終的には DFA を設計したいと考えています。次のような正規表現がたくさん見つかりました。
\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
しかし、JFLAP を使用して NFA または DFA に変換することはできません。
私は何をすべきか?