Я использую регулярное выражение в своем приложении, и я хочу проверить его для разных комбинаций. Как мне указать, начинается с 'a' и заканчивается на 'e'?
ответ
*
соответствует 0 или более предшествующим символам. Таким образом, ваш шаблон указывает, что будет 0 или более p
s.
Он соответствует ae
, ape
и appppppppppppppppppppppppppppppppppppppppppppppe
, но не яблоко.
Типичная конструкция для «соответствовать что-нибудь» является .*
(соответствует любому символу ноль или более раз), и ваш шаблон будет:
^a.*e$
Регулярное выражение работает, если добавить .
до звезды *
:
(^ap.*e$)
Однако, для ваших требований нет необходимости в p
, так что это будет делать
(^a.*e$)
Вы можете объяснить это регулярное выражение следующим образом (см это link)
^
Assert позиции в начале строкиa
соответствует персонажу буквально (чувствительно к регистру).*
спичек любой символ (кроме новой строки). Квантор*
матчи между нулем и неограниченное количество раз, столько раз, сколько это возможно, отдавая по мере необходимостиe
соответствует символу е буквально (чувствительно к регистру)$
позиции утверждают, в конце строки
Попробуйте этот номер ^a(.*)e$
. шаблон для запуска с «а» заканчивается «е»
Бесполезные круглые скобки. –
Скобки для группировки. дает больше ясности, вот и все. не грех, если вы его используете –
Я знаю, но они могут быть пропущены для новичков. –
Вы можете использовать этот
(^ap.*e$)
Вы можете попробовать тестирования вы Regex на этом сайте.
Как я указываю начинается с
'a'
и заканчивается'e'
?
Если вы ищете целое слово в его границах, как это:
\ba\w+e
Вы можете использовать \b
якорь, чтобы соответствовать word boundaries в модификатор g
выполнить глобальный матч ,
var result = "apple orange apple banana carrot apple".match(/(\ba\w+e)+/g);
alert(result);
- 1. Зачем вам возвращаться (0 * ap ++)?
- 2. пытаются завить к яблоку
- 3. Зачем кому-то делать Catch (Exception e) {throw e; }?
- 4. Может кто-нибудь объяснить, что e = e || Икс? Зачем присваивать e e?
- 5. Невозможно найти документацию по яблоку о forTraitCollection
- 6. Реализация `` sequence` с ap`
- 7. переопределение не изменяется для разных mouseClicked (MouseEvent e). Зачем?
- 8. «Количество столбцов не соответствует количеству значений в строке 1» E
- 9. /.?e.?/ соответствует всей строке, а не ожидалось подстроку
- 10. не соответствует ожидаемому типу
- 11. Python - wifi - reauth ap
- 12. Qt QDateTime toString ("h: m: s ap") ap/a/AP/отсутствует
- 13. Классификация текста наивных заливов не соответствует одной категории. Зачем?
- 14. Android-коммутатор AP программно
- 15. Haskell Quine: «ap» Monad
- 16. Практика AP CS - OOP
- 17. Недопустимый BSSID (AP MAC-адрес)
- 18. AP сканирования и OnClickListener
- 19. Не удалось найти мой ap на play.google.com
- 20. WebServer + AP не работает? WebServer + STA делает
- 21. {m, n} не соответствует ниже m, но соответствует выше n. Зачем?
- 22. .htaccess не соответствует
- 23. Как получить доступ к Яблоку iCal-Server через Python
- 24. DynamicReports AP: экспортирует пустой pdf
- 25. Значение e не определено
- 26. Ограничение: «E» не работает
- 27. java научное обозначение e и e +?
- 28. Mikrotik подключается к 3 AP
- 29. Как ap может быть составлен?
- 30. Зачем вам здесь расти?
Используйте ['^ a [\ s \ S] *? E $'] (https: // regex101.com/r/uA7hK6/1) – Tushar
@Tushar почему '[\ s \ S]', а не '.'? –
Почему все предлагают совместить * любые * символы? Я думаю, что необходимо использовать '\ w *': '^ ap * \ w * e $', чтобы разрешать буквенно-цифровые символы. –