使用正则表达式从字符串中提取子字符串

时间:2019-06-26 11:57:12

标签: java regex string text-extraction

我是regex的新手,所以我有以下字符串:

[[ChromeDriver: chrome on LINUX (ff108507ea7a3598104c728cc453f299)] -> xpath: /html[1]/body[1]/div[3]/div[1]/header[1]/div[1]/div[1]/div[1]/div[1]/nav[1]/ul[1]/li[1]/a[1]] (class: sf-depth-1 menuparent ext sf-with-ul)

我想知道如何删除/html之前的所有内容,因此我得到了以下字符串:     / html [1] / body [1] / div [3] / div [1] / header [1] / div [1] / div [1] / div [1] / div [1] / nav [1] / ul [1] / li [1] / a [1]](类:sf-depth-1 menuparent ext sf-with-ul)

我尝试过但没有成功:

Pattern pattern = Pattern.compile("/html.*");
Matcher matcher = pattern.matcher(absoluteXpath);

if (matcher.find()) {
    System.out.println(matcher.group(1));
}

在这里测试:

https://regexr.com/4gff0

1 个答案:

答案 0 :(得分:0)

无需正则表达式...只需使用:

String str = "[[ChromeDriver: chrome on LINUX (ff108507ea7a3598104c728cc453f299)] -> xpath: /html[1]/body[1]/div[3]/div[1]/header[1]/div[1]/div[1]/div[1]/div[1]/nav[1]/ul[1]/li[1]/a[1]] (class: sf-depth-1 menuparent ext sf-with-ul)";
str = str.substring(str.indexOf("/html"));