空想曲線

吉里吉里2/KAG3でのゲーム制作に使える小ネタ置き場。ゲーム用素材も置いてます。

吉里吉里/KAGちょいネタ補足 名前入力編  

2013-01-18
2014-09-13
cm0
tb0

以前書いた「名前入力画面を作ってみよう」の補足記事です。
空白数字を入力したときにエラーメッセージを出して再入力を促すようにします。

*editname|名前入力
[cm]
; ユーザーが入力した名前は変数f.nameへ
; 不備等で戻ってきたときのために中身をリセットします

[eval exp="f.name=''"]

; エディット欄の作成
[edit name=f.name maxchars=8 length=200][r][r]
[link target=*check]
確 定[endlink]
[s]


*check|入力した文字列のチェック
; 入力内容の確定
[commit]
[cm]

; 入力した文字列に空白が混ざっているとき
[if exp="/[\s]/.test(f.name)"]
入力された文字に空白が混ざっています。[r]
もう一度入力してください。[p]
[jump target=*editname]


; 入力した文字列に数字が混ざっているとき
[elsif exp="/[\d]/.test(f.name)"]
入力された文字に数字が混ざっています。[r]
もう一度入力してください。[p]
[jump target=*editname]
[endif]


; 名前の確認
あなたの名前は[emb exp="f.name"]ですね?[r]
[link target=*yes]
は い[endlink][link target=*editname]いいえ[endlink]
[s]


*yes
[cm]
それではゲームを開始します。
[s]

詳しくはTJS2リファレンスのRegExpクラスを参照してください。
testメソッドはスラッシュで囲まれた正規表現パターンが
カッコ内の変数にひとつでも含まれている場合に「真」を返します。

■今回使用した正規表現のパターンについて補足
\s 空白文字
\S 空白以外の文字
\d 数字
\D 数字以外の文字

大文字か小文字で反対の意味になるので間違えないよう注意しましょう。


関連記事

コメント

コメントの投稿

Secret

トラックバック

トラックバックURL
→http://kopacurve.blog33.fc2.com/tb.php/281-65ad9c31
この記事にトラックバックする(FC2ブログユーザー)

Author

Recent

Category

Link

Comment

Mailform

Twitter