我试图获取第一个斜杠后的所有字符。
我尝试了以下但它不起作用
任何人都可以共享任何示例正则表达式以获取第一个斜线后的所有字符
String pattern = "[A-Za-z\\s]|(?<=[A-Za-z\\s])/";
示例输入 - xx/abs-12345/67890
预期输出 - abs-12345/67890
最佳答案
这是您需要的正则表达式:
(?<=/).+
lookbehind 查找 /
,然后匹配其后的每个非行结束符。由于正则表达式引擎从左到右检查,它总是会找到第一个斜杠。
Matcher m = Pattern.compile("(?<=/).+").matcher("xx/abs-12345/67890");
if (m.find()) {
System.out.println(m.group());
}
您甚至可以在一行中执行此操作,无需正则表达式。
System.out.println(Arrays.stream(s.split("/")).skip(1).collect(Collectors.joining("/")));
s
是输入字符串。
关于java - 正则表达式使用java获取第一个斜杠后的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48712527/