Клини Стар в программировании. Разница между (a|b)* и a*b*?

В чем разница между (a|b)* а также a*b*? Можете ли вы показать больше примеров звезды и моделей Клини? Я искал так много сайтов в Google, но он дал очень мало результатов по этой теме. Я был бы очень благодарен, поскольку я пытаюсь понять, как работают регулярные выражения PHP.

1 ответ

Решение

(a|b)* означает "a или b, любое количество раз". a*b* означает "любое число a, за которым следует любое количество b". Таким образом, существуют строки ("baa", "abba" и т. Д.), Которые соответствуют первому, но не второму.

Другие вопросы по тегам