TOP > Users > ORCA通信アーカイブ > vol.014

 ORCA通信

ORCA通信とはサイズから定期的に発行されるスペック作成のヒントと新規開発されるメニューのご案内です。


 ORCA通信 vol.014(2009/3/25発行)


ORCAユーザーの皆様、こんにちは。
第14回ORCA通信をお届けいたします。

INDEX
[1] ORCA Coreマニュアル第4版がダウンロード可能に
[2] スペック作成のヒント第十四回:これは使える!ORCA Script


[1] ORCA Coreマニュアル第4版がダウンロード可能に

ORCA Coreのマニュアルが更新されました。
200ページもので読み応え十分ですが、ORCA Core(管理画面)の細かい説明が記載されています。

「コノボタンは、ナンダロウ?」
「サンプル除去設定と絞込み設定のちがいってナンダ?」
など、疑問に思ったらマニュアルをご参照ください。

もちろん、お問合せも大歓迎ですので、ご不明点はお気軽にお問合せください。


[2] スペック作成のヒント
第十四回:これは使える!ORCA Script


特定の期間を定めてその範囲内の日付を回答してもらうという設問があったとします。
単純にその設定だけでよければ簡単ですが月の末日は30日だったり31日だったり、2月は年によって末日が変わってしまいます。
日付の妥当性をチェックするために1つ1つジャンプを作ってエラーを設定するのは大変ですよね。

そこで今回は、月の日数やうるう年のチェックを入れた期間チェックの正規表現をご紹介します。
(入力方法は YYYYMMDD の8桁で入力する場合の例です。)

正規表現はよくわからない、難しいと思う方もいると思いますが設問内での設定だけでジャンプの作成はないので地味に便利です!!

完成画面はこのような画面です。→こちら

■サンプルスペックの説明

14000.Q 設問です(文字入力回答)

^(200[89](01|03|05|07|08|10|12)(0[1-9]|[12][0-9]|3[01]))|(200[89](04|06|09|11)(0[1-9]|[12][0-9]|30))|(200[89]02(0[1-9]|1[0-9]|2[0-8]))|(20080229)$
その他設定画面の入力パターンに上記の非常に長い正規表現が設定してあります。

このパターンは以下の部分に分けることができます。

      ^
        (200[89](01|03|05|07|08|10|12)(0[1-9]|[12][0-9]|3[01]))
        |
        (200[89](04|06|09|11)(0[1-9]|[12][0-9]|30))
        |
        (200[89]02(0[1-9]|1[0-9]|2[0-8]))
        |
        (20080229)
      $

順に説明します。

「^」は文字列の最初を「$」は文字列の最後を表します。
言い換えると「^」と「$」で挟むことによって、完全一致を表します。

「^」と「$」で囲まれた部分は、「|」を挟んだ4つの部分に分けることができます。
「|」はor(または)を表します。

(200[89](01|03|05|07|08|10|12)(0[1-9]|[12][0-9]|3[01]))
 この部分は、大の月(31日まである月)のための入力パターンです。

さらに以下の3つに分けて説明します。

 ・ 200[89]
  年です。2008または2009にマッチします。
 ・ (01|03|05|07|08|10|12)
  月です。01、03、05、07、08、10、12 にマッチします。
 ・ (0[1-9]|[12][0-9]|3[01])
  日です。01~09 または 10~29 または 30、31 にマッチします。

(200[89](04|06|09|11)(0[1-9]|[12][0-9]|30))
 この部分は、2月以外の小の月(30日まである月)のための入力パターンです。

さらに以下の3つに分けて説明します。

 ・ 200[89]
  年です。2008または2009にマッチします。
 ・ (04|06|09|11)
  月です。04、06、09、11 にマッチします。
 ・ (0[1-9]|[12][0-9]|30)
  日です。01~09 または 10~29 または 30 にマッチします。

(200[89]02(0[1-9]|1[0-9]|2[0-8]))
 この部分は、2月1日~2月28日のための入力パターンです。

さらに以下の3つに分けて説明します。

 ・ 200[89]
  年です。2008または2009にマッチします。
 ・ 02
  月です。02 にマッチします。
 ・ (0[1-9]|1[0-9]|2[0-8])
  日です。01~09 または 10~19 または 20~28 にマッチします。

(20080229)
 この部分は、2008年の2月29日のための入力パターンです。

スペックを添付いたしますのでコピ-してお使いください!!
スペックダウンロード

ご不明な点等がございましたらお気軽にご連絡ください。

それでは次回もお楽しみに!


  ページトップへ

vol.013へ vol.013へ vol.015へvol.015へ