正则表达式和字符串操作技术

时间:2012-06-12 16:54:29

标签: java regex

假设输入字符串可以指定如下:

  • 读取(xpath('...'))或
  • xpath('...')或
  • ...

其中...只保留一些xpath表达式,例如/comment/text

我真正想要的只是xpath表达式;考虑到可以指定的三种可能的有效模式,通常会提取此值的有效方法是什么。

另外,我在Java中实现它。

2 个答案:

答案 0 :(得分:0)

它可以帮助您发布一些代码,但您可以使用String Split。请参阅http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#split%28java.lang.String%29

如果您确定要使用xpath(''),则可以使用xpath('作为正则表达式并剥离字符串并收集其中的数据,直到它碰到另一个'(撇号)。

我希望这会给你一个想法。

答案 1 :(得分:0)

这是基本示例,它匹配两个字符串示例中的xpath部分:

import java.util.regex.*;

class Untitled {
  public static void main(String[] args) {
    String input = "read(xpath('...'))";
    String result = null;
    Pattern regex = Pattern.compile("xpath\\(\'(.*?)\'\\)");
    Matcher matcher = regex.matcher(input);

    if (matcher.find()) {
        result = matcher.group(1);
    }

    System.out.println(result);
  }
}