Мне нужно знать, проверяется ли конец строки на чем-то вроде .xyz плюс какие-либо символы после него.
Как это:
myString.endsWidth(".css*")
Однако это не проходит мое if-утверждение. Один конкретный пример - строка такого типа: style.css?v=a1b23
style.css?v=a1b23
Есть идеи?
Полный пример Строка:
http://xyz.com//static/css/style.css?v=e9b34
гул, я думаю, что-то вроде этого еще лучше:
return myString.indexOf(".css")>-1;
Если вы действительно хотите использовать регулярное выражение, вы можете использовать это
return myString.matches(".*?\\.css.*");
endsWith принимает строку в качестве параметра
endsWith
matches принимает регулярное выражение
matches
Используйте ".*\.css.+" в качестве регулярного выражения.
".*\.css.+"
Попробуйте регулярное выражение:
Pattern p = Pattern.compile(".*\.css.*"); Matcher m = p.matcher("mystring"); if (m.matches()) { // do your stuff }
используйте \.(.{3})(.*), тогда первая группа ($ 1) содержит три символа после ., а вторая группа $ 2 содержит остаток строки после этих трех символов.Добавьте знак $ в конце выражения, чтобы он искал только строки, заканчивающиеся этой комбинацией
\.(.{3})(.*)
.