Подтвердить что ты не робот

Регулярное выражение, содержащее одно слово или другое

Мне нужно создать выражение, соответствующее целому числу, за которым следуют "секунды" или "минуты"

Я пробовал это выражение: ([0-9]+)\s+(\bseconds\b)|(\bminutes\b)

Он отлично работает в течение нескольких секунд, но не минут.

например. "5 секунд" дает 5 секунд; в то время как "5 минут" дает;; минуты

4b9b3361

Ответ 1

Вы просто пропустили дополнительную пару скобок для символа "ИЛИ". Следующее должно сделать трюк:

([0-9]+)\s+((\bseconds\b)|(\bminutes\b))

Без них вы либо соответствовали числу, за которым следуют секунды, либо просто слово минут

Ответ 2

Вы можете использовать одну группу в секундах/минутах. Следующее выражение может удовлетворить вашим потребностям:

([0-9]+)\s*(seconds|minutes)

онлайн-демонстрация