正则表达式如何提取两个字符串之间的字符串
例如:speed=2000MHz如何提取2000?
谢谢。

解决方案 »

  1.   

    (?i)(?<=speed=)MHZ
    类似这样的
    不过死活不出来啊
      

  2.   

    http://topic.csdn.net/u/20110921/18/914c8c81-a80e-4100-8cba-9ea22b93922c.html
      

  3.   


    String str = "speEd=2000MHz";
    Pattern p = Pattern.compile("(?i).*?=(\\d*)");
    Matcher m = p.matcher(str);
    m.find();
    System.out.println(m.group(1));
      

  4.   

    好像不能提取2000
    提取到的是speed=2000
      

  5.   

    "(?i)(?<=speed=)(\\d*)"
    这样可以了
    不过不知道啥意思
      

  6.   

    String s = "speed=2000MHz1024";
    String num = s.replaceAll("speed\\s*=\\s*(\\d+).*", "$1");
    System.out.println(num);
      

  7.   

    Pattern p = Pattern.compile("\\d+");
    Matcher m = p.matcher(arg0);if(m.find())
    String num = m.group(0);
    这样不是取到数据了吗?
      

  8.   

    public String get() {
        String str = "speed=2000MHz";
        return "2000";
    }
      

  9.   

    "(?i)(?<=speed=)(\\d*)"
    这样可以了
    不过不知道啥意思
    大神给解释下
    谢谢