View Javadoc
1   package com.foxinmy.weixin4j.util;
2   
3   import java.util.regex.Matcher;
4   import java.util.regex.Pattern;
5   
6   /**
7    * 正则表达式工具类
8    * 
9    * @className RegexUtil
10   * @author jinyu(foxinmy@gmail.com)
11   * @date 2015年12月8日
12   * @since JDK 1.7
13   * @see
14   */
15  public final class RegexUtil {
16  	/**
17  	 * Content-disposition 中的 filename提取正则
18  	 */
19  	private static final Pattern FILENAME_RGX = Pattern
20  			.compile("(?<=filename=\").*?(?=\")");
21  
22  	/**
23  	 * 从 Content-disposition提取文件名
24  	 * 
25  	 * @param contentDisposition
26  	 * @return
27  	 */
28  	public static String regexFileNameFromContentDispositionHeader(
29  			String contentDisposition) {
30  		if (StringUtil.isBlank(contentDisposition)) {
31  			return null;
32  		}
33  		Matcher filenameMatcher = FILENAME_RGX.matcher(contentDisposition);
34  		return filenameMatcher.find() ? filenameMatcher.group() : null;
35  	}
36  }