WaybillTools.java 1.4 KB
package com.tianbo.analysis.tools;

import org.apache.commons.lang.StringUtils;

import java.util.regex.Pattern;

/**
 * @author mrz
 * 关于运单的工具类
 */
public class WaybillTools {

    /**
     * 检查运单格式是否符合要求 格式要求为172-66666666
     * @param waybillNo 运单号
     * @return true符合
     */
    public static boolean checkWaybillFormat(String waybillNo){
        if (StringUtils.isNotBlank(waybillNo)){
            String pattern = "^\\d{3}-\\d{8}$";
            // 创建 Pattern 对象
            Pattern r = Pattern.compile(pattern);

            boolean isMatch = Pattern.matches(pattern, waybillNo);

            return isMatch;
        }

        return false;
    }

    /**
     * 转换运单格式,将17266666666格式转换成172-66666666
     * @param awbNo 运单号,格式为17255555555
     * @return 转换后的运单号
     */
    public static String awbFormat(String awbNo) {
        if (!StringUtils.isEmpty(awbNo)) {
            //适配邮单解析
            String pattern = "\\d{11}";
            boolean isMatch = Pattern.matches(pattern, awbNo);
            if (!isMatch){
                return awbNo;
            }

            StringBuffer stringBuffer = new StringBuffer(awbNo);
            stringBuffer.insert(3, "-");
            awbNo = stringBuffer.toString();
            return awbNo;
        }
        return "";
    }
}