我正在寻找一种通过点分割弦乐的好方法,但不要触摸用重音符号包裹的部分("`")。我不确定是否有正则表达式,所以也欢迎其他方法。
换句话说,我想转换一下:
"a.`b.html`.c.`d.html`"
到此:
["a", "b.html", "c", "d.html"]
答案 0 :(得分:1)
我会用'字符分割,然后删除前导和尾随点。为此,我使用replaceAll method:
String input = "a.`b.html`.c.`d.html`";
String[] values = Arrays.stream(input.split("`")) //split by the `
.map(s -> s.replaceAll("(^\\.|\\.$)", "")) //remove dots
.collect(Collectors.toList())
.toArray(new String[0]);
System.out.println(Arrays.toString(values));
输出:
[a,b.html,c,d.html]