教科書では、イプシロン(ε)
記号を使用して正規表現を書く方法を教えていますが、正規表現を完全に作り直すことなく、その記号をコードに直接変換するにはどうすればよいですか?
たとえば、この正規表現をどのように記述すれば、開始または終了a
(あるいはその両方)するすべての小文字の文字列をキャッチできますか。
これが正しいかどうかは100%わかりませんが...
((a | epsilon
)[az] *
a)| (a [az] *
(a | epsilon
))
したがって、一致する必要のある文字列には次のものがあります。
a //single "a" starts or ends with "a"
aa //starts and ends with "a"
ab //starts with "a"
ba //ends with "a"
aba //starts and ends with "a"
aaaaaaaa //starts and ends with "a"
abbbbbbb //starts with "a"
bbbbbbba //ends with "a"
abbbbbba //starts and ends with "a"
asdfhgdu //starts with "a"
onoineca //ends with "a"
ahnrtyna //starts and ends with "a"
正しい記号と交換epsilon
するものだけで、式の残りの部分を変更したくありません。また、明確にしておきたいのですが、実際にはイプシロンシンボルをチェックしていません。文字を選択するか、何も選択しないようにします(何もしない...イプシロン)。
そのようなシンボルは存在しますか?
私が欲しいことは可能ですか?