在第一个和第二个正斜杠之间删除文本

时间:2018-06-11 10:00:51

标签: java regex

如何提取最终输出,例如" / testsite / 585-product"使用来自此输入字符串/ Sites / testsite / documentLibrary / 585-product的java regex表达式;

2 个答案:

答案 0 :(得分:1)

只需拆分字符串并合并索引2和4:

String s = "/Sites/testsite/documentLibrary/585-product";
String[] components = s.split("/");
String newString = components[2] + "/" + components[4];
System.out.println(newString);

答案 1 :(得分:0)

如果你想查看它,这是正则表达式。

(?:[^\/]*)\/(?:[^\/]*)(.*)

和regex101上的演示https://regex101.com/r/E6w56j/1

  • 非捕获组(?:[^ /] ) 匹配下面列表中不存在的单个字符[^ /]
    • 量词 - 在零和无限次之间匹配,尽可能多次,根据需要回馈(贪婪)
    • /匹配字符/字面(区分大小写)
    • 非捕获组(?:[^ /] ) 匹配下面列表中不存在的单个字符[^ /]
      • 量词 - 在零和无限次之间匹配,尽可能多次,根据需要回馈(贪婪) /匹配字符/字面(区分大小写) 第一捕获组(。) 。''匹配任何字符(行终止符除外)
    • 量词 - 在零和无限次之间匹配,尽可能多次,根据需要回馈(贪婪) 全局模式标志 g修饰符:全局。所有比赛(首场比赛后不返回) m修饰符:多行。导致^和$匹配每行的开头/结尾(不仅是字符串的开头/结尾)