Is (a|b)* the same as a*|b*? In other words, does (a|b)* accept string which are combinations of as and bs?
Is
(a|b)*the same asa*|b*?
They are not the same.
a*|b* means "(0 or more as) or (0 or more bs)"
(a|b)* means "0 or more (a or b)s"
So, for example, ab will be matched by (a|b)* but not by a*|b*. Note also that anything matched by a*|b* will also be matched by (a|b)*.
No.
In case of (a|b)*, you can mix As and Bs (see demo).
In case of a*|b*, you can have either As or Bs (see demo).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With