Сообщение от laimas
|
Если по условию text2 может и быть, и отсутствовать, то проверять его наличие нет смысла, проверяйте только наличие text1 и text3.
|
Как такое может быть? Рассмотрим, например, разбор числа в JavaScript. Например,
15 и
1e+5, по вашему утверждению получается, что, поскольку подстрока
e+ может и быть, а может и отсутствовать, следовательно проверять её наличие нет смысла, то получается, что это одинаковые числа!
laimas иногда провозглашает удивительнейшие вещи! Диковинка!
Сообщение от Cache
|
он присутствует, выражение его не сохраняет в найденных
что делаю не так?
|
У вас
text2 необязателен, да ещё находится в окружении
.*, что позволяет никогда его не находить.
Я думаю, что можно рассмотреть оба варианта: наличие text2 .*(text2).* и его отсутствие .*.
<script>
var
str='text1 aaaaa aa aaa aaaa aaa aaa a text2 aaaa aaaa aaaa aaa aaa text3',
rx=/(text1)(?:.*(text2).*|.*)(text3)/;
document.write(rx.exec(str).join('<br>'));
</script>