url匹配的正则问题

阅读 3.9k
3 个回答

/^\/\w+fun\/$/

public static void main(String[] args){
Pattern p = Pattern.compile("\\w*fun\\w*");
Matcher m = p.matcher("http://www.abc.com/2d/df/usnsdp_fun/sdkw.html");
if (m.find()){
System.out.println(m.group());
}
}

java的,没做过多测试,楼主再测测,这里\w包括数字字母及下划线,不包括斜杠,\w后有星号的,不知道为什么显示不出来

测试代码:

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

public class Test {
    public static void main(String[] args) {
        System.out.println(getFun("http://www.abc.com/2d/df/usnsdp_fun/sdkw.html"));
        System.out.println(getFun("http://www.abc.com/2d/df/usnsdp_fun_abcd/sdkw.html"));
    }

    public static String getFun(String url) {
        Pattern p = Pattern.compile("[^/]*fun[^/]*");
        Matcher m = p.matcher(url);
        if (m.find()){
            return m.group();
        }
        return "";
    }
}

控制台输出:

usnsdp_fun
usnsdp_fun_abcd
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题