К сожалению, я тщетно пытаюсь написать подходящий JavaScript RegEx, который соответствует следующему случаю:
- он соответствует одной строке, а не многострочному.
- ТОЛЬКО положительно, если строка содержит менее 6 слов
- И , если она содержит любое из слов "Там", "Это", "Собака" .
RegEx для 2-х пунктов, вероятно:
^(\s*\S+(?:\s+\S+){1,4}\s*)$
демо
RegExдля 3 точки, вероятно, это:
^(?=.*(There\b|\This\b|\bDog)).*$
демо
Теперь у меня есть проблема, чтобы объединить это 2 регулярное выражение в одно.Я пробовал что-то вроде: ^(\s*\S+(?:\s+\S+){1,5}\s*)(?=.*(There\b|\bThis\b|Dog)).*$
демо
Как я могу объединить там 2 RegEx правильно?
Некоторые примеры:
Hello I am under 6 words
-> отрицательное, без триггерного слова
Hello I am under dog words
-> положительное до 6 слов + триггерное слово (собака)
Hello I am dog but with a longer string
-> отрицательное, потому что более 6 слов
Dog
-> положительный, до 6 слов + триггерное слово (собака)