LucidWorks: регулярные выражения Java и регулярные выражения GNU - PullRequest
2 голосов
/ 18 ноября 2011

Я пытаюсь создать регулярные выражения, чтобы я мог сканировать и индексировать определенные URL-адреса на своем веб-сайте с помощью LucidWorks.

Пример URL: http://www.example.com/reviews/assassins-creed-revelations/24475/reviews/ Пример URL: http://www.example.com/reviews/super-mario-3d-land/64303/reviews/

По сути, я хочу, чтобы LucidWorks осуществлял поиск по всему моему сайту и индексировал только те URL, которые имеют / reviews / в конце URL.

Может ли кто-нибудь помочь мне создать выражение, чтобы сделать это, пожалуйста? :)

Изменено:

URL: http://www.example.com/

Включить пути: / / * / reviews / *

Это сработало, но оно сканирует только первую страницу, не переходит на следующую страницу с большим количеством отзывов (1,2,3 и т. Д.).

Если я тоже добавлю: / / / reviews /.*

Я получаю индексированные страницы, которые мне не нужны, например, http://www.example.com/?page=2

1 Ответ

0 голосов
/ 14 февраля 2013
Check with this function
public boolean canAcceptURL(String url,String endsWith){
    boolean canAccept = false;
    String regex = "";
    try{
        if(endsWith.equals("")){
            endsWith = "/reviews/";
        }
    regex = "[\\x20-\\x7E]*"+endsWith+"$";//Check the url string u passed ends     with the endString you hav passed.If end string is null it will take the default value.
        canAccept = url.matches(regex);
    }catch (PatternSyntaxException pe) {
        pe.printStackTrace();
    }catch (Exception e) {
        e.printStackTrace();
    }
    System.out.println("String matches : "+canAccept);
    return canAccept;
}

Sample out put :
calling function : canAcceptURL("http://www.example.com/reviews/super-mario-3d-land/64303/reviews/","/reviews/");
String matches : true

if you want to get the url contains *'/reviews/'* just change the regex string to

String regex = "[\\x20-\\x7E]*/reviews/[\\x20-\\x7E]*"; // this will accept a string with white space and special character.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...