• ベストアンサー

正規表現について

PIDを”123-456-789-999”といった感じに”3文字+3文字+3文字+3文字” でないと送信できないようにしたいです、それ以外ははねる。今のままだと”1-1-1-1”とか”123-45-1111-111”送信できてしまいます。 教えてください。よろしくおねがいします。 'PID', '\w[0-9a-z]\w[0-9a-z]\w[0-9a-z]-\w[0-9a-z]\w[0-9a-z]\w[0-9a-z]-\w[0-9a-z]\w[0-9a-z]\w[0-9a-z]-\w[0-9a-z]\w[0-9a-z]\w[0-9a-z]',

質問者が選んだベストアンサー

  • ベストアンサー
  • 100Gold
  • ベストアンサー率27% (284/1018)
回答No.1

[0-9a-z][0-9a-z][0-9a-z]-[0-9a-z][0-9a-z][0-9a-z]-[0-9a-z][0-9a-z][0-9a-z]-[0-9a-z][0-9a-z][0-9a-z] でどうでしょう。必要に応じて\をいれる必要があるかもしれませんが。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 正規表現について

    お世話になります。 いろいろ調べてテストもしたのですが、 どうしてもわからないのでヒントをください。 やりたいことは、PHPでパスワードチェックを したいのです。 a-z A-Z 0-9 _- 以外の文字が入ったらエラーを返したい のですが、方法がわかりません。 そもそもpreg_matchをつかうのか、eregを使うのか・・・ どうか、よろしくお願いします。

    • ベストアンサー
    • PHP
  • 正規表現

    お世話になります。正規表現の質問です。 \w に当たる文字とハイフンに合致するが、少なくとも一文字はアルファベット(a-z)またはハイフン(-)が含まれていなければならない(つまり、数字だけの文字列は合致しない) という正規表現はどうあらわせばよいでしょうか。 以上、よろしくお願いします。

    • ベストアンサー
    • Perl
  • 正規表現について

    正規表現について質問をさせていただきます。 VB6.0にて正規表現を使用し、入力された文字のチェックを行っていますが どうしてもうまくいきません。 チェックしたい文字は A(半角アルファベット大文字1文字)または AAA(半角アルファベット大文字3文字)または (AAA)(半角カッコつき半角アルファベット大文字3文字)で 上記3パターン以外はエラーとしたいと思っています。 パターンは下記のように作成したのですが "(^[\(][A-Z]{3}[\)])|(^[A-Z]{1,3})" A、AAA、(AAA)以外でもA(AA)やAAAA等も正常ケースとして通過してしまいます。 パターンをどのように作成すればよいか教えて下さい。 よろしくお願いします。

  • 正規表現で

    正規表現で、英大文字と記号だけからなる文字列、を表すにはどうすればよいでしょうか。言い方を変えると、とにかく英小文字は含まないという事なんですが… [^a-z]+ かなと思ったのですがダメでした。 123#ABC : OK 123#aBC : NG みたいな感じです。 よろしくお願いします。

  • 正規表現について

    正規表現で、「空白またはa~zの中の1文字」を表すには[ a-z]でよいのでしょうか?

  • 英単語が誤って空白で区切られたのを正規表現で除く

    英語の文章を紙媒体からスキャンして電子化しました。その際に、斜体が含まれていたり、何らかの事情で英単語がスペースで区切られてしまっている場合があります。これを取り除くのが最終的な目的です。例えば I l o v e New York. といったようにです。 正規表現による置換での処理をまず思いつき、 置換前 スペース[a-z]スペース 置換後 スペース[a-z] としてみたら、[a-z]に当たる部分が置換後には元の文字から[a-z]となってしまい、あいまい検索でヒットしたのはよいものの、置換後は元の文字を維持してくれませんでした。   第一の質問として、[a-z] や [0-9]といった表現を含む置換の場合、元の文字をそのままに、それ以外の部分を置換することは可能なのでしょうか? 第二に、I l o v e New York. を I love New York. とするにはどうしたら良いのでしょうか?処理が完全でなくても、以前よりも読みやすくなれば構いません。 よろしくお願いします。

  • 正規表現の意味を教えてください

    function underscore($camelCasedWord) { return strtolower(preg_replace('/(?<=\\w)([A-Z])/', '_\\1', $camelCasedWord)); }

    • ベストアンサー
    • PHP
  • Perlで使える正規表現を教えて下さい。

    Perlで使える正規表現を教えて下さい。 半角英語で、小文字が3文字以上続いた後、大文字が来る場合、その大文字の右にスペースを入れる。 これをPerlで使える正規表現を教えて頂けないでしょうか? 例 $str = 'AaaAaaaBbbbbCccccDddBbA'; # Aaa Aaaa Bbbbb Ccccc DddBbA ちなみに、色々ネットで調べて試してみて、 $str =~ s/([a-z])([A-Z])/$1 $2/g; が最も近いコードになったのですが、2文字続いただけでもスペースが入り困っています。 宜しくお願い致します。

    • ベストアンサー
    • Perl
  • メルアドをチェックする正規表現?

    こんにちは,よろしくお願いします。JavaScriptでメルアドをチェックしようと次のような文字列を,patternという変数に代入して, var pattern = "^[a-z0-9\-_.]+@[a-z\-]+(\.[a-z\-]+)*com|net|org|edu|gov|mil|int|info|biz|name|pro|museum|aero|coop|[a-z][a-z]$"; 次のようにチェックしたのですが, if(mail.match(pattern)){・・・ "aa"など,2つ以上の小文字のアルファベット文字列にマッチしてしまいます。つまり,@が入っていなくてもマッチしてしまいます。実は,正規表現の解説書を見てこのような文字列としたのですが,JavaScriptでは不都合な点があるのでしょうか?ご存知の方がいらっしゃいましたら,ご教授ください。よろしくお願いします。

  • 正規表現でパスワードのチェック

    8文字以上で、アルファベット大文字、アルファベット小文字、記号を最低1つずつ含んでいるか、というチェックを正規表現で行いたいと考えています。 以下のようにしているのですが、うまくいきません。間違っているのでしょうか? ^(?=.{8,})(?=[a-z]+)(?=[A-Z]+)(?=[~!#$%^&`*+;:"'?/|{}.=_,-]+).+$ また、使用しているのは、Jakarta-OroのPerl5Utilです。 使用しているライブラリが悪いのでしょうか?

    • ベストアンサー
    • Java
このQ&Aのポイント
  • The desire to 'prove them all wrong' or 'shove it in their faces' has made many a millionaire. But what does 'it' refer to in this context?
  • Such stories ignore the pollution produced as a side effect and the wear and tear it put on the engine. But what is the meaning of 'wear and tear it put on the engine'?
  • Anger can be a powerful fuel for success, as many successful people claim. However, it's important to consider the negative consequences it may have.
回答を見る