質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Q&A

解決済

2回答

7450閲覧

PHP 正規表現 半角英数字のみ

nnn_kkk

総合スコア9

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

0グッド

1クリップ

投稿2020/04/10 10:00

PHPで正規表現をしてます。

6文字以上16文字以内のパスワード

PHP

1if(preg_match("/^[a-zA-Z0-9]{6,16}$/", $upass])) { 2 array_push($errmsg, "パスワードは6~16文字で入力してください<br/>"); 3}

メールアドレス

PHP

1if(preg_match("/^.[a-zA-Z0-9_.+-]+[@][a-zA-Z0-9.-]+$/", $email)) { 2 array_push($errmsg, "メールアドレスは正しい形式で入力してください。<br/>"); 3}

以上2つ、色々書き方を変えたりしましたが
思い通りの動きになりません。

外部サイトで確認し、一つ一つ意味を確かめたりしましたが
それを組み合わせると途端に分からなくなってしまいました。

ご教授いただければ幸いです。

使用言語 PHP7.4

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/04/10 10:33

〈思い通りの動きになりません〉なにがどうなってますか?
退会済みユーザー

退会済みユーザー

2020/04/10 10:49

$upass の後ろの ] はエラーを誘発しますね。
guest

回答2

0

emailってどこまで許容するかってありますけどね。仕様次第です。
私はさくっと検証フィルタ使います。

投稿2020/04/10 11:49

m.ts10806

総合スコア80854

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnn_kkk

2020/04/10 12:37

回答ありがとうございました。 検証フィルタ!そんなものがあったのですね! 目を通して勉強してみます。
guest

0

ベストアンサー

マッチしないときにメッセージを出すので、条件を否定演算子で否定しないと。
文の意味を声に出して読めば気付いたと思います。

PHP

1if(!preg_match("/^[a-zA-Z0-9]{6,16}$/", $upass)) {

$upass]はタイプミスですかね。文法エラーになったはずですが。

また、パスワード文字数上限を16のような小さい数にするのは間違っています。
1000とかせめて100とかにしましょう。

同様に、メールアドレスについても、否定が必要です。
正規表現の妥当性についてはコメントしませんが、こういうのは自分で考えないほうがいいですよ。

投稿2020/04/10 11:03

otn

総合スコア84677

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnn_kkk

2020/04/10 12:39

ああぁ,,,本当だ。ありがとうございます。 声に出す...徹底していきます。 迅速に対応いただきありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問