SFAでよく使う文字列チェック処理5選

kintoneを使ったSFA運用コンサルティングをしていると当然、高い確率で要望として上がるカスタマイズがあります。今回は、文字列に関するチェック処理5選を紹介いたします。
文字列チェック処理は正規表現で実現しますので、基本的にはコピペで使ってもらえると良いかもしれません。
利用するプラグイン
- rex0220 項目検証プラグイン ※1
※1 rex0220プラグインは中華圏(中国大陸、香港、台湾)では、弊社がQYPSというブランドでサブスクリプション形式で提供しております。
メールアドレス形式チェック
連絡先マスタにはemailフィールドは必ず用意されているはずです。しかし、フィールドタイプにemailはありますが、イベント処理に使えない、過去データを入れるときに不備があると入らないとかで、何かと不都合が起きるため、文字列にする場合が非常に多いです。一方で、文字列にしておくと、いざ画面から入力すると何も制限がないため間違いに気づきません。そこで、email形式のチェック処理を実装しておきます。

項目検証プラグインの検証ダイアログで設定します。

計算式は下記となります。正式には大文字でもよいのですが重複禁止を考慮し、小文字のみ許可にしています。
AND(email!="",NOT(TESTRE(email, "^[a-z0-9_+-]+(\.[a-z0-9_+-]+)*@([a-z0-9][a-z0-9-]*[a-z0-9]*\.)+[a-z]{2,}$
")))
なので、計算式プラグインと併用して、小文字変換を併用すると利便性が高まります。
LOWER(email)
携帯電話番号の形式チェック
こちらもリンク型電話番号だと、国コードなども許可され制限が低いので、重複の可能性が高くなってしまいます。そのためチェック処理で実装をお勧めしています。

項目検証プラグインの検証ダイアログで設定します

計算式は下記となります。0で始まり。その後は数字2桁-数字4桁-数字4桁としてチェックしてます。
AND(携帯番号!="",NOT(TESTRE(携帯番号,"^0[0-9]{2}-[0-9]{4}-[0-9]{4}$"))
)
電話番号の形式チェック
電話番号は、日本の場合、0x-xxxx-xxxx, 0xx-xxx-xxxx, 0xxx-xx-xxxxと3パターンあるので少し長くなります。

項目検証プラグインの検証ダイアログで設定します。

計算式です。
AND(電話番号!="",NOT(TESTRE(電話番号,"^0([0-9]-[0-9]{4}|[0-9]{2}-[0-9]{3}|[0-9]{3}-[0-9]{2})-[0-9]{4}$")))
郵便番号の形式チェック
郵便番号はxxx-xxxxですので、シンプルに実装できます。

項目検証プラグインの検証で設定します。

計算式です。
AND(郵便番号!="",NOT(TESTRE(郵便番号,"^[0-9]{3}-[0-9]{4}$")))
販売管理システム会社番号の形式チェック
販売管理システムと連携するような場合、販売管理システムの取引先コードを入力する場合があります。コードの規則は様々ですが、今回は最初の1または2文字が大文字英字、以降は5桁の数字という例を紹介します。

項目検証プラグインの検証で設定します。

計算式例です。
AND(取引先CD!="",NOT(TESTRE(取引先CD,"^[A-Z]{1,2}[0-9]{5}$"))
)
大文字などの条件がある場合は、計算式プラグインと併用して、大文字変換を入れると利便性が高まります。
UPPER(取引先CD)