регулярное выражение для разделения на единую косую черту

Добавьте эту строку в свой web.xml. Это работает для меня

<context-param>
        <param-name>org.ajax4jsf.handleViewExpiredOnClient</param-name> 
        <param-value>true</param-value>     
    </context-param>
1
задан YCF_L 13 July 2018 в 06:45
поделиться

2 ответа

Вы также можете попробовать:

    String test = "https://www.google.com/https://www.yahoo.com/https://facebook.com/";

    String[] urls = test.split("(?<!/)/(?!/)");

    for(String s:urls){

        System.out.println(s);
    }

Выход

https://www.google.com https://www.yahoo.com https://facebook.com

2
ответ дан vb.stack 17 August 2018 в 13:33
поделиться
  • 1
    Но обратите внимание, что это предполагает, что URL-адреса имеют только домен и нет пути к нему (что, однако, похоже, имело место здесь). – Tim Biegeleisen 13 July 2018 в 06:40
  • 2
    да ты прав ! это предположение основано на данных, о которых идет речь. – vb.stack 13 July 2018 в 06:44

Мы можем попробовать расщепить следующий положительный результат:

(?=https?:)

Это приведет к поломке строки URL-адреса всякий раз, когда появится новый протокол http или https.

String input = "https://www.google.com/https://www.yahoo.com/https://facebook.com/";
String[] urls = input.split("(?=https?:)");
for (String url : urls) {
    System.out.println(url);
}

https://www.google.com/
https://www.yahoo.com/
https://facebook.com/

Demo

6
ответ дан Tim Biegeleisen 17 August 2018 в 13:33
поделиться
  • 1
    Спасибо, но что, если у меня есть что-то вроде google.com/https://www.yahoo.com/https://facebook.com/… (без https) – Gunaseelan 13 July 2018 в 06:32
  • 2
    Ну, мой код действительно будет работать на этом конкретном входе. Но если вы говорите, что у вас могут быть фрагменты URL-адресов, вам нужно будет сделать больше работы. Но это довольно большой отход от вопроса, который вы задали. Почему вы меняете требования? – Tim Biegeleisen 13 July 2018 в 06:33
  • 3
    Извините за изменение его ... Его динамическая строка от внешнего источника, мне нужно получить все URL-адреса ... – Gunaseelan 13 July 2018 в 06:35
  • 4
    Я не знаю, как сопоставить протокол и домен с верхней части головы, поэтому я не могу легко обновить. Я думаю, что ваш источник данных плохой, потому что он использует разделитель, который также является частью возможных данных. – Tim Biegeleisen 13 July 2018 в 06:38
  • 5
    Хорошо, друг, спасибо. – Gunaseelan 13 July 2018 в 06:39
Другие вопросы по тегам:

Похожие вопросы: