我有一个文本文件,我想使用Java提取这两个单词之间的内容。
我是Java的新手,任何人都可以帮助我吗?
这是用R语言提取单词之间的内容方法&成分。
sub("."*Directions*(.*?)* Photograph.*,\\1",x)
其中x
是文字内容。
任何人都可以告诉我Java
中的相应代码。
由于
答案 0 :(得分:3)
使用Java Pattern类:
String x = new String("string that contains Directions and Photograph. ");
Pattern pattern = Pattern.compile("Directions(.*?) Photograph");
Matcher matcher = pattern.matcher(x);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
直播DEMO
答案 1 :(得分:1)
如果你被允许使用apache-commons;这可以优雅地完成:
String[] results = StringUtils.substringsBetween(str,"Directions","Photograph");
str
是有问题的字符串。
您需要的依赖是commons-lang-XXX.jar
答案 2 :(得分:0)
最简单的方法是:
String originalString = "bla, bla, bla, Directions bla ... bla ... bla.... Ingredients ....";
String result = originalString.substring(originalString.indexOf("Directions")+"Directions".length(), originalString.indexOf("Ingredients"));
System.out.println(result);