我正在尝试使用jxpath来浏览生成的java对象。我有一个xpath
形式的导航结构a:FirstElement/aa:SecondElement/aaa:ThirdElement
我需要以下列格式获取字符串
firstElement/secondElement/thirdElement
如何在Java中使用正则表达式执行此操作?
答案 0 :(得分:0)
一种可能的方式:
public static void main(String[] argv)
{
String str = "a:FirstElement/aa:SecondElement/aaa:ThirdElement";
String[] splits = str.split("/?[a-z]*:");
String finalStr = "";
for (String s : splits)
{
if (!finalStr.isEmpty())
{
finalStr += "/";
}
finalStr += s;
}
System.out.println(finalStr);
}
答案 1 :(得分:0)
你可以试试这个
Matcher m = Pattern.compile(".+?:((.+?/)|(.+?$))").matcher(s);
StringBuffer sb = new StringBuffer();
while(m.find()) {
int i = sb.length();
m.appendReplacement(sb, m.group(1));
sb.setCharAt(i, Character.toLowerCase(sb.charAt(i)));
}
s = sb.toString();