プロが教える店舗&オフィスのセキュリティ対策術

それで^と*が[]の外にある場合の意味を教えてください。
宜しくお願いします。

A 回答 (3件)

^ は『文字列の先頭から調べる』事を意味し


* は『[a-zA-Z0-9_]』が0回以上にマッチする事を意味します。(要は先頭から[a-zA-Z_]に1回(1文字)マッチしてもOKと言う事)

かな?

もし先頭が[a-zA-Z_]で1文字ではダメって事なら、[a-zA-Z0-9_]+ (+ は1回以上)ですかね。
文字数に制限をかけたいなら[a-zA-Z0-9_]{最小値-1,最大値-1}で数字を入れてあげる。
-1は頭文字を抜いてって事で。
    • good
    • 1
この回答へのお礼

ご回答くださいましてありがとうございました。
^ は『文字列の先頭から調べる』
なるほどですね!
人力で行う場合、作業を依頼する場合『文字列の先頭から調べる』と
指示しなくても、判断できますが、コンピュータは
『文字列の先頭から調べる』の^[]と指示してやらないとちゃんとした検査ができない
のですね。
* も同じことが言えますが0回以上だとマッチしなくてもOKではなかったのですかね?
 いまいちですが?

お礼日時:2018/04/22 17:00

No.1です。



>* も同じことが言えますが0回以上だとマッチしなくてもOKではなかったのですかね?

前回の回答で書いてますが、

『要は先頭から[a-zA-Z_]に1回(1文字)マッチしてもOKと言う事』

すなわち[a-zA-Z_]が1文字(数字は含まない頭文字)マッチしたらOKなのです。
    • good
    • 1

No.2です。



>すなわち[a-zA-Z_]が1文字(数字は含まない頭文字)マッチしたらOKなのです。

ちょっと説明不足ですかね。
検索文字列が1文字且つ[a-zA-Z_]の条件を満たした時ですね。
    • good
    • 1
この回答へのお礼

ご回答くださいましてありがとうございました。
なるほどですね^^
助かります。
 そういえばメールアドレスなどは文字が含まれなくても成立するし
だから、数字が入っていなくてもマッチしないと、検索の要望に対して
検索できなくなる事象が発生するので、*0回以上としないしと
検索したいproductは検索可能となる。

お礼日時:2018/04/23 05:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!