用简单的字符串提取标签之间的文本

时间:2011-08-28 01:32:14

标签: java regex string

我似乎无法掌握正则表达式的整个概念,我已经使用php几年了,并且在大多数情况下,试图避免使用preg_match和这样的函数。我想知道你们是否可以指出我正确的方向,我可以学习java的正则表达式,或者只是一般的正则表达式?我尝试了很多不同的教程和指南,但我仍然遇到了麻烦。

在我努力学习和提高我的正则表达能力的同时,你们可以帮助我吗?

在java中

我有一个类似的字符串

String secKey;
secKey = "<auth_key>5aff0b2449511aac46e14b5e62436e994c5d</auth_key>";

我如何从字符串中提取“5aff0b2449511aac46e14b5e62436e994c5d”?

如果你们可以帮助我,并且可能指出我正确的方向让我走上正确的道路,这将是伟大的,谢谢!

3 个答案:

答案 0 :(得分:4)

这样的事情:

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class X {
        . . .
    public static String extractValue(String s) {
      Pattern p =  Pattern.compile("<auth_key>(.+)</auth_key>") ;
      Matcher m = p.matcher(s) ;
      if ( m.find()) 
          return m.group(1) ;
      else
         return null ;
    }
        . . .
}

答案 1 :(得分:1)

我从这篇SO帖子开始学习正则表达式。 Learning Regular Expressions 作为学习工具以及当前正则表达式的测试基础,我曾经使用http://rubular.com/。我希望这会给你一个良好的开端。

答案 2 :(得分:0)

使用java.util.regex.Pattern link

的java中的正则表达式

正则表达式教程link