GWT - извлечь текст между двумя символами - PullRequest
0 голосов
/ 08 февраля 2019

В GWT у меня есть сервлет, который возвращает изображение из базы данных клиенту.Мне нужно извлечь часть строки, чтобы правильно показать изображение.То, что возвращается в chrome, firefox и IE, имеет косую черту в части src.Пример: String s = "src = \" "; Который не отображается в приведенной ниже строке. Возможно, косая черта добавляет дополнительные скобки вокруг строки http. Я не уверен?

  what is returned in those 3 browsers is = <img style="-webkit-user-select: none;" src="http://localhost:8080/dashboardmanager/downloadfile?entityId=4886">

EDGE браузер не 'В src нет косой черты, поэтому мой метод для извлечения изображения не работает с краем

Какой край возвращает:

String edge = "<img src=”http://localhost:8080/dashboardmanager/downloadfile?entityId=4886”>";

Проблема: мне нужно извлечьСтрока ниже.

http://localhost:8080/dashboardmanager/downloadfile?entityId=4886

либо с src =, либо с src = \

То, что я пробовал и работает с браузерами, которые возвращают без скобок "src = \":

String s = "src=\"";
int index = returned.indexOf(s) + s.length();
image.setUrl(returned.substring(index, returned.indexOf("\"", index + 1)));

Но не работает в EDGE, потому что он не возвращает косую черту

У меня нет доступа к шаблону и сопоставлению в GWT.

Как извлечь и запомнитьНомер объекта будет меняться http://localhost:8080/dashboardmanager/downloadfile?entityId=4886

из что возвращается строка выше?

РЕДАКТИРОВАТЬ:

Мне нужен общий способ извлечения http://localhost:8080/dashboardmanager/downloadfile?entityId=4886

Когда строка может выглядеть следующим образом.

String edge = "<img src=”http://localhost:8080/dashboardmanager/downloadfile?entityId=4886”>";

3 browsers is = <img style="-webkit-user-select: none;" src="http://localhost:8080/dashboardmanager/downloadfile?entityId=4886">

1 Ответ

0 голосов
/ 08 февраля 2019
    public static void main(String[] args) {
        String toParse = "<img style=\"-webkit-user-select: none;\" src=\"http://localhost:8080/dashboardmanager/downloadfile?entityId=4886\">";    
        String delimiter = "src=\"";
        int index = toParse.indexOf(delimiter) + delimiter.length();
        System.out.println(toParse.substring(index, toParse.length()).split("\"")[0]);      
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...