久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      判斷時(shí)間的正則表達(dá)式

      普通方法為,分離出小時(shí)、分鐘、秒分別進(jìn)行判斷:
      public static boolean timeCheck(String time, String owner) {
      //檢查時(shí)間字符串time是否滿足格式“HH:mm:ss”或“HH:mm”,若不滿足顯示相應(yīng)消息,并返回false
      if(time.equals(“”)){
      String msg = owner+” : “+”Time is EMPTY.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      int hours, minutes, seconds = 0;
      StringTokenizer st = new StringTokenizer(time, “:”);
      int tokens = st.countTokens();
      if (tokens != 3 && tokens != 2) {
      String msg = owner+” : “+”Time ” + time + ” does not conform to the HH:mm:ss format, nor HH:mm format.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      String hourToken = st.nextToken();
      try {
      hours = Integer.parseInt(hourToken);
      } catch (NumberFormatException nfe) {
      String msg = owner+” : “+hourToken + ” in ” + time + ” can not be parsed as hours.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      String minuteToken = st.nextToken();
      try {
      minutes = Integer.parseInt(minuteToken);
      } catch (NumberFormatException nfe) {
      String msg = owner+” : “+minuteToken + ” in ” + time + ” can not be parsed as minutes.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      if(tokens == 3){
      String secondToken = st.nextToken();
      try {
      seconds = Integer.parseInt(secondToken);
      } catch (NumberFormatException nfe) {
      String msg = owner+” : “+secondToken + ” in ” + time + ” can not be parsed as seconds.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      }
      if (hours < 0 || hours > 23) {
      String msg = owner+” : “+”Specified hours: ” + hours + “. Number of hours must be in the [0..23] range.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      if (minutes < 0 || minutes > 59) {
      String msg = owner+” : “+”Specified minutes: ” + minutes + “. Number of minutes must be in the [0..59] range.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      if (seconds < 0 || seconds > 59) {
      String msg = owner+” : “+”Specified seconds: ” + seconds + “. Number of seconds must be in the [0..59] range.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      return true;
      }
      正則方法為:
      public static boolean timeCheck(String time, String owner) {
      //檢查時(shí)間字符串time是否滿足格式“HH:mm:ss”,若不滿足顯示相應(yīng)消息,并返回false
      String regex = “(([01]\d)|(2[0-3])):[0-5]\d(:[0-5]\d)?”;
      if(!time.matches(regex)){
      String msg = owner+” : “+”Time is INVALID.”;
      MessageDialog.showError(Controller.getMainFrame(), msg);
      return false;
      }
      return true;
      }
        真是很好很強(qiáng)大啊??!不過上述正則“((2[0-3])|([01]d)):[0-5]d(:[0-5]d)?”實(shí)現(xiàn)居然不能匹配“3:3:3”,郁悶!
        將正則改為“((2[0-3])|([0-1]?d)):[0-5]?d(:[0-5]?d)?”倒是可以匹配“3:3:3”這種了,但“3:65:34”顯然是不對(duì)的,卻又匹配出兩個(gè)來,暈!
        將正則改為“((2[0-3])|([0-1]?d)):[0-5]?d(:[0-5]?d)”倒是可以匹配“3:3:3”,也能正確判斷“3:65:34”,卻又沒法判斷“3:34”這種格式了。唉~~~~

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)