Как я могу сопоставить следующую строку?Регулярное выражение (Java)
http://localhost:8080/MenuTest/index.action
Регулярное выражение должно возвращать true, если оно содержит «MenuTest» в приведенном выше шаблоне.
Cheers
Как я могу сопоставить следующую строку?Регулярное выражение (Java)
http://localhost:8080/MenuTest/index.action
Регулярное выражение должно возвращать true, если оно содержит «MenuTest» в приведенном выше шаблоне.
Cheers
Возможно, вам не нужно регулярное выражение?
String url = "http://localhost:8080/MenuTest/index.action";
boolean hasWhatImLookingFor = url.contains("MenuTest");
Используйте строчные буквы для переменных: String url = "http: // ....."; – OscarRyz
@ Оскар - Это правда. Исправлена. – karim79
@karim: Теперь вам нужно использовать это строчное имя! :) s/URL.contains/url.contains/иначе это будет хуже, чем раньше. BTW +1 для ответа «простого» подхода :) – OscarRyz
Что-то в этом роде? (непроверенные)
Regex r = new Regex("MenuTest");
r.search("http://localhost:8080/MenuTest/index.action");
System.out.println(""+r.didMatch());
а? Regex не является частью стандартного Java API. Из какой из сторонних библиотек это? – toolkit
Я не понимал, но использует com.stevesoft.pat. Не имеет значения, какой пакет regex (вы должны использовать его, поскольку вы говорите, что он не является частью стандартного API), который вы используете, идея такая же, чтобы соответствовать одному слову в строке. – miccet
java.util.regex был частью библиотеки Java уже около семи лет. Нет необходимости в сторонней библиотеке, где будет работать стандарт. –
Регулярное выражение, которое вы ищете, просто «MenuTest», без кавычек. Если вопрос не является более сложным, чем кажется?
Если вам нужно проверить, если «MenuTest» появляется в этой конкретной позиции (т.е. после того, как хост/порт), то вы можете использовать:
^https?://[^/]++/MenuTest
Хорошее и точное решение :) – patjbs
Твёрдосплавный, это не нужно регулярное выражение , для этого требуется совпадение строк с ванильной связью. – karim79