こんな事ありませんか?
Salesforceを使用していて、こんな事ありませんか?
・半角英数字だけを入力させたい・・・
・アルファベットと数字を組合せて入力を制御させたい・・・
・ハイフンは半角にして郵便番号を入力させたい・・・
そんな時は、入力規則を使って入力できる内容を制御しましょう!!
色々な正規表現を紹介するのでぜひ活用ください!!
今回の記事は、Salesforceで使える様々な正規表現について設定方法を載せています。
☆真似するだけで簡単に設定できるので、ぜひブックマークしていつでも見返せるようにしてください♪☆
※不明点・こんな入力規則を作りたいんだけど・・・等の相談あれば、コメントください!匿名なのでお気軽にどうぞ☆
ADMINだってできるもん☆
応用編は以下です!
https://adminfight.com/salesforce-manual-setting-regularexpressionadvance-tips/
前提
・テキスト項目に対して、入力規則を作成していきます。
※数値項目や通貨項目は、そもそも入力できる内容や桁数を制御できるため。
・ロングテキスト項目やリッチテキスト項目は対象外です。
※改行されて入力されるとエラーになります。
・実際に使う時は、 Test__c の部分を実際の項目API名に変えてくださいね!!!!
半角数字または半角英字のみに制限
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "[0-9]{8}" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[0-9]{5}" ) ))
Ⅲ NOT( REGEX( Test__c , "[0-9]+" ) )
Ⅳ NOT( REGEX( Test__c , "[0-9]*" ) )
Ⅴ NOT( REGEX( Test__c , "[a-z]{8}" ) )
Ⅵ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[A-Z]{5}" ) ))
Ⅶ NOT( REGEX( Test__c , "[a-z]+" ) )
Ⅷ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[a-zA-Z]*" ) ))
※Ⅰ~Ⅷのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
➀入力したい桁数を変えたいときは、赤マーカー部分の数字を変更してください!!
NOT( REGEX( Test__c , “[0-9]{8}” ) )
※それか、そもそものテキスト項目にて文字数制限かける方法も◎です。
➁特定の数字だけを入力したい場合は、以下の部分を変更してください!!
NOT( REGEX( Test__c , “[0-9]{8}” ) )
例えば、
NOT( REGEX( Test__c , “[13579]{8}” ) ) → 1,3,5,7,9で8桁
NOT( REGEX( Test__c , “[1-68]{8}” ) ) → 1~6,8で8桁
半角英数字のみに制限
このセクションでは、以下の入力規則を紹介しています。
※どちらも桁数指定はしていません。
Ⅰ NOT( REGEX( Test__c , "[a-zA-Z0-9]+" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[a-zA-Z0-9]*" ) ))
※Ⅰ,Ⅱのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
➀入力したい桁数を変えたいときは、赤マーカー部分を{6}とかに変更してください!!
NOT( REGEX( Test__c , “[a-zA-Z0-9]+” ) )
AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , “[a-zA-Z0-9]*” ) ))
※それか、そもそものテキスト項目にて文字数制限かける方法も◎です。
➁特定の数字だけを入力したい場合は、以下の部分を変更してください!!
NOT( REGEX( Test__c , “[0-9]{8}” ) )
例えば、
NOT( REGEX( Test__c , “[13579]{8}” ) ) → 1,3,5,7,9で8桁
NOT( REGEX( Test__c , “[1-68]{8}” ) ) → 1~6,8で8桁
全角数字または全角英字のみに制限
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "[0-9]{8}" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[0-9]{5}" ) ))
Ⅲ NOT( REGEX( Test__c , "[0-9]+" ) )
Ⅳ NOT( REGEX( Test__c , "[0-9]*" ) )
Ⅴ NOT( REGEX( Test__c , "[a-z]{8}" ) )
Ⅵ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[A-Z]{5}" ) ))
Ⅶ NOT( REGEX( Test__c , "[a-z]+" ) )
Ⅷ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[a-z
A-Z
]*" ) ))
※Ⅰ~Ⅷのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
半角の時と同じですが、以下の2つを変更してみてください!
➀入力したい桁数を変えたいときは、赤マーカー部分の数字を変更してください!!
NOT( REGEX( Test__c , “[0-9]{8}” ) )
※それか、そもそものテキスト項目にて文字数制限かける方法も◎です。
➁特定の数字だけを入力したい場合は、以下の部分を変更してください!!
※全角で入力してください。
NOT( REGEX( Test__c , “[0-9]{8}” ) )
例えば、
NOT( REGEX( Test__c , “[13579]{8}” ) ) → 1,3,5,7,9で8桁
NOT( REGEX( Test__c , “[1-68]{8}” ) ) → 1~6,8で8桁
半角カタカナまたは全角カタカナのみに制限
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "[ヲ-゚]{3}" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "
[ヲ-゚]{4}
" ) ))
Ⅲ NOT( REGEX( Test__c , "
+" ) )[ヲ-゚]
Ⅳ NOT( REGEX( Test__c , "[ヲ-゚]*" ) )
Ⅴ NOT( REGEX( Test__c , "[ァ-ー]{2}" ) )
Ⅵ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[ァ-ー]{6}" ) ))
Ⅶ NOT( REGEX( Test__c , "
[ァ-ー]
+" ) )
Ⅷ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[
ヲ-゚
]*" ) ))ァ-ー
※Ⅰ~Ⅷのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
半角数字のときと同じですが、以下のように適宜変更してみてください。
➀入力したい桁数を変えたいときは、赤マーカー部分の数字を変更してください!!
NOT( REGEX( Test__c , “[ヲ-゚]{8}” ) )
※それか、そもそものテキスト項目にて文字数制限かける方法も◎です。
➁特定の文字だけを入力したい場合は、以下の部分を変更してください!!
NOT( REGEX( Test__c , “[ヲ-゚]{8}” ) )
例えば、
NOT( REGEX( Test__c , “[アイウエオ]{8}” ) ) → ア,イ,ウ,エ,オで8桁 ※アイウエオは半角にしてください。
NOT( REGEX( Test__c , “[アカサタナ]{8}” ) ) → ア,カ,サ,タ,ナで8桁 ※アイウエオは半角にしてください。
[ナ-ノ]のように範囲で指定したい場合は、以下のURLを参考にしてください!
https://tools.m-bsys.com/data/charlist_kana.php
※カタカナの範囲指定は、上級者向けになるので特定のカタカナだけにする場合は、1文字ずつ明記した方がアドミンの方にとっては、分かりよいと思います。
文字と数字の組み合わせを指定する
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "[ァ-ー]{3}[0-9]{2}" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "
*" ) ))[ァ-ー0-9]
※Ⅰ,Ⅱのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
➀入力したい桁数を変えたいときは、赤マーカー部分を{6}とかに変更してください!!
AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , “[ァ-ー0-9]*” ) ))
※6文字にしたときに、その内訳は設定できません。
┗1文字目をカタカナで2文字目を数字にする等
※それか、そもそものテキスト項目にて文字数制限かける方法も◎です。
➁特定の文字目を指定したい場合は、赤マーカ―部分を変更してください!!
NOT( REGEX( Test__c , “[ァ-ー]{3}[0-9]{2}” ) )
例えば、
NOT( REGEX( Test__c , “[ァ-ー]{4}[0-9]{2}[ァ-ー]{3}” ) ) → アドミン06テスト
NNOT( REGEX( Test__c , “[ァ-ー]{2}[0-9]{4}[ァ-ー]{2}” ) ) → アド2024ミン
数式の各記号が何を示しているかは、別途ブログ記事を書きます!!
最初または最後のみ特定の文字を指定する
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "[0-9]{4}.*" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , ".*[ヲ-゚]{3}" ) ))
Ⅲ NOT( REGEX( Test__c , "[
ァ-ー
]{1}.*[
" ) )ァ-ー
]{1}
Ⅳ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , "[0-9]{1}.*[a-z]{4}" ) ))
※Ⅰ~Ⅳのそれぞれで他の入力規則の書き方はありますが、アドミンの方が理解しやすい記載方法にしました。
➀入力したい桁数を変えたいときは、赤マーカー部分を{6}とかに変更してください!!
NOT( REGEX( Test__c , “[0-9]{4}.*” ) )
➁特定の文字種類を指定したい場合は、赤マーカ―部分を変更してください!!
AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , “[0-9]{1}.*[a-z]{4}” ) ))
前述の全角数字・全角英字の設定に適宜変えることもできます!
途中の文字を指定する
このセクションでは、以下の入力規則を紹介しています。
Ⅰ NOT( REGEX( Test__c , "
.*
[0-9]{4}.*" ) )
Ⅱ AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , ".*[ァ-ー]{3}.*" ) ))
どちらも前後に文字があっても無くてもエラーになりません。
例.)Ⅰであれば、2024テストです。 →エラーにならない。
他の部分と解説と同じになりますが、以下の2つを変更してみてください!
※詳細な各記号の解説は、別途ブログを書きます。
➀入力したい桁数を変えたいときは、赤マーカー部分を{6}とかに変更してください!!
NOT( REGEX( Test__c , “.*[0-9]{4}.*” ) )
➁特定の文字種類を指定したい場合は、赤マーカ―部分を変更してください!!AND(NOT(ISBLANK(Test__c )),NOT( REGEX( Test__c , ".*[ァ-ー]{3}.*" ) ))
前述の全角数字・全角英字の設定に適宜変えることもできます!
コメント 匿名ですので、お気軽にコメントいただけると嬉しいです!!