Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
973 views
in Technique[技术] by (71.8m points)

regex - Extract certain substring in Java

I have a sentence, which is:

User update personal account ID from P150567 to A250356.

I want to extract the keywords "P10567" from this sentence.

How do I extract data between the sentence using regex or string method?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
  • String method:

    Use StringUtils.substringBetween() of Apache Commons:

    public static void main(String[] args) {
        String sentence = "User update personal account ID from P150567 to A250356.";
        String id = StringUtils.substringBetween(sentence, "from ", " to");
        System.out.println(id);
    }
    
  • Regex method:

    Use regex from (.*) to, the string surrounded by parentheses is called group(1), just extract it:

    public static void main(String[] args) {
        String regex = "from (.*) to";
        String sentence = "User update personal account ID from P150567 to A250356.";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(sentence);
        matcher.find();
        System.out.println(matcher.group(1));
    }
    

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...