public static void main(String[] args) {
Scanner s=new Scanner(System.in);
System.out.println("请输入:");
String str=s.nextLine();
String GZ = getGZStr(str);
String B = getBStr(str);
System.out.println("品番="+GZ);
System.out.println("序号="+B);
System.out.println();
}
/**
 * 获取GZ字符串
 * @param str
 * @return
 */
public static String getGZStr(String str){
String reg="[A-Z]{2}[0-9]{6}-[0-9]{4}";
Pattern p = Pattern.compile(reg);
Matcher m = p.matcher(str);
while (m.find()) {
//System.out.println(m.group());
return m.group();
}
return null;
}
/**
 * 获取B后面的字符串
 * @param str
 * @return
 */
public static String getBStr(String str){
String reg1="[A-Z]{1}[0-9]{2}\\s+[0-9]{7}";
String reg2="[0-9]{7}";
Pattern p = Pattern.compile(reg1);
Matcher m = p.matcher(str);
String str1 = null;
while (m.find()) {
str1 = m.group();
//System.out.println(str1);
}
Pattern p2 = Pattern.compile(reg2);
Matcher m2 = p2.matcher(str1);
while (m2.find()) {
//System.out.println(m2.group());
return m2.group();
}
return null;
}

解决方案 »

  1.   

    可以写一个JavaScript异步事件,通过Ajax,在第一个文本框失去焦点之后,发送一个请求,将你想要显示的内容分别设置在另外两个文本框中。
      

  2.   

    以下是个完整的例子:首先,要是修改页面的话加
    window.onload=function (){ //绑定项目状态
    var tp = "${project.type}";
    findstate(tp); }其次,输入框加属性:onchange="findstate(this.value);"最后findstate函数和html:function findstate(val) {
    if(val && typeof(val)!="undefined" && val!=0){
    if(val == "软件license"){
    document.getElementById("ss").style.display = 'none';
    document.getElementById("sss").name = '';
    document.getElementById("rj").style.display = '';
    document.getElementById("rjs").name = 'state';
    document.getElementById("yj").style.display = 'none';
    document.getElementById("yjs").name = '';
    document.getElementById("wh").style.display = 'none';
    document.getElementById("whs").name = '';
    }else if(val == "实施"){
    document.getElementById("ss").style.display = '';
    document.getElementById("sss").name = 'state';
    document.getElementById("yj").style.display = 'none';
    document.getElementById("yjs").name = '';
    document.getElementById("rj").style.display = 'none';
    document.getElementById("rjs").name = '';
    document.getElementById("wh").style.display = 'none';
    document.getElementById("whs").name = '';
    }else if(val == "软件维护费"){
    document.getElementById("ss").style.display = 'none';
    document.getElementById("sss").name = '';
    document.getElementById("yj").style.display = 'none';
    document.getElementById("yjs").name = '';
    document.getElementById("rj").style.display = 'none';
    document.getElementById("rjs").name = '';
    document.getElementById("wh").style.display = '';
    document.getElementById("whs").name = 'state';
    }else{
    document.getElementById("ss").style.display = 'none';
    document.getElementById("sss").name = '';
    document.getElementById("yj").style.display = '';
    document.getElementById("yjs").name = 'state';
    document.getElementById("rj").style.display = 'none';
    document.getElementById("rjs").name = '';
    document.getElementById("wh").style.display = 'none';
    document.getElementById("whs").name = '';
    }
    }else{
    document.getElementById("rj").style.display = '';
    document.getElementById("rjs").name = 'state';
    document.getElementById("yj").style.display = 'none';
    document.getElementById("yjs").name = '';
    document.getElementById("ss").style.display = 'none';
    document.getElementById("sss").name = '';
    document.getElementById("wh").style.display = 'none';
    document.getElementById("whs").name = '';
    }
    }
    <tr>
    <td class="tit">项目类型:</td>
    <td><form:select path="type" class="input-medium" onchange="findstate(this.value);">
    <form:option value="${project.type}" label="" />
    <form:options items="${fns:getDictList('pro_type')}"
    itemLabel="label" itemValue="value" htmlEscape="false" />
    </form:select></td>

    <td class="tit">项目状态:</td>
    <td id="rj" style="display:"><form:select id="rjs" path="state" class="input-medium">
    <form:option value="${project.state}" label="" />
    <form:options items="${fns:getDictList('state-rj')}"
    itemLabel="label" itemValue="value" htmlEscape="false" />
    </form:select></td>

    <td id="yj" style="display:none"><form:select id="yjs" path="state" class="input-medium">
    <form:option value="${project.state}" label="" />
    <form:options items="${fns:getDictList('state-yj')}"
    itemLabel="label" itemValue="value" htmlEscape="false" />
    </form:select></td>

    <td id="ss" style="display:none"><form:select id="sss" path="state" class="input-medium">
    <form:option value="${project.state}" label="" />
    <form:options items="${fns:getDictList('state-ss')}"
    itemLabel="label" itemValue="value" htmlEscape="false" />
    </form:select></td>

    <td id="wh" style="display:none"><form:select id="whs" path="state" class="input-medium">
    <form:option value="${project.state}" label="" />
    <form:options items="${fns:getDictList('state-wh')}"
    itemLabel="label" itemValue="value" htmlEscape="false" />
    </form:select></td>
    </tr>