私は正規表現を学んでいるので、自分の理解が正しいことを確認したいだけです。
01*0 の後に 1 の 0 回以上の繰り返しが続くことを
1* + 01*意味します。 は、1 の 0 回以上の繰り返しまたは 0 の後に 1 の 0 回以上の繰り返しが続くことを意味します。
私は正しいですか、それとも欠けているものがありますか? ありがとう。
私は正規表現を学んでいるので、自分の理解が正しいことを確認したいだけです。
01*0 の後に 1 の 0 回以上の繰り返しが続くことを
1* + 01*意味します。 は、1 の 0 回以上の繰り返しまたは 0 の後に 1 の 0 回以上の繰り返しが続くことを意味します。
私は正しいですか、それとも欠けているものがありますか? ありがとう。
正規表現の + は OR を意味するのではなく、「の 1 つ以上」を意味します。
したがって、1* + 01* の代わりに次のように言います。
1*|01*
これは、1 の (長さ 0 の可能性がある) 文字列、または 0 の後に (長さ 0 の可能性がある) 1 の文字列のいずれかを意味します。
したがって、次のいずれかに一致します。
1
1111
0
011
しかし、次のどれもありません:
101
110
100001
001
00
OR 演算子 (垂直パイプ) の優先順位は低くなります。
これは私には正しいようです。(私は正規表現の達人ではないと思っていましたが)
しかし、ここにあなたがチェックアウトできる 良いチュートリアルがあります. これも便利だと思いました。