<?php
$mail = "php_programming@shuwasystem.co.jp";
if (!eregi("^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$",$mail))
echo ("メールアドレスが誤っています!");
?>
上記の中、\\-とか\\.などの意味がわかりません。\はエスケープなら
なぜ二つ並べるのでしょうか。
そして、|の意味もわかりません。
お分かりの方、教えていただければ大変うれしいです。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
その正規表現中の\\-と\\.は-と.にヒットさせるものです。
なぜ2つなのかは不明です。(-はそのままで良かったと
思うのですが)
ちなみに私は
if (!ereg('^[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+'.'@'.'[-!#$%&\'*+\\/0-9=?A-Z^_`a-z{|}~]+\.'.'[-!#$%&\'*+\\./0-9=?A-Z^_`a-z{|}~]+$', $mail)) {
//エラー、E-mailに全角文字や、メールアドレスとして不正な文字が入っている?
}
という正規表現を使ってます。
やはり、なぜ\を二つ並べる?ってあまりこだわらないことにします。
そういうふうに使うんですね。
ご紹介いただいたソースはすごくいいと思います。
参考にさせていただきますね。
この度はご指導いただき、どうもありがとうございました。
No.1
- 回答日時:
まだ勉強中なので分かる範囲で。
|は論理和、つまり英語のorの意味ですね。
\¥はなぜ繰り返しなんでしょうね?私も疑問です。
PHPのeregiについてはちょっと分かりませんが、
分かる範囲で訳しますと、
$mailが
(1)(小文字のaからzと0から9と_または-または.の一回以上の繰り返し)
(2)@
(3)(小文字のaからzと0から9と_または-の一回以上の繰り返し)に.を付けたものの一回以上の繰り返し
(4)小文字のaからzの2回以上4回以下の繰り返し
の条件満たしているかeregiで調べて偽ならエラー表示。
ということだと思います。
でもこれだと、__--..@abc.co.jpでもエラーにならないかも・・・。
少々怪しいので、正規表現の達人による補足回答を待ちましょう。
|ってorの意味ですね。。。覚えてはいたと思いますが、
まったく別物に見えてしまいました。
\はそうやって二つ並べて使うって風に理解しておくしかないでしょうか。。。
この度はご指導いただきまして
どうもありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPの変わった閉じタグの必要性と意味を教えてください。 1 2022/08/28 15:15
- PHP phpのメールフォームの完了画面でメール受信のコードを書いています。 1 2023/05/31 11:39
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- PHP php 完了画面の送信メールのコードを書いているのですが・・・ 2 2023/06/02 12:01
- MySQL SQL任意に並び替えをしたい 2 2023/08/28 10:47
- PHP PHP MySql ページング 2 2022/09/20 06:38
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
mb_send_mailを実行するとエラ...
-
PHP+MysQLで返信する内容をMy...
-
onedrive にexcelファイルをア...
-
Illustratorで文字と画像を流し...
-
拡張子php画像をjpg画像等に変...
-
one drive のアップロード失敗...
-
URLの変わらないページをPHPで...
-
imgタグでのphpの呼び出しについて
-
URLが.PHPってどういう...
-
データ送信をボタンを押さずに...
-
AccessのDoCmd.SendObjectについて
-
LinuxでのPHP、Configure Comma...
-
PHPにてC言語プログラムを呼び...
-
<img src=~.php>へのデータの...
-
サーバー間のファイルの移動(コ...
-
PHPによる画像の生成による色の...
-
別ファイルの変数を呼び出した...
-
画像処理について
-
cakephpのサブタイトルはどこで...
-
パーミッションの考え方。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
さくらサーバーにて、phpからメ...
-
mb_send_mail関数が利用出来ない
-
ローカル環境でのメール送信
-
pearのMailライブラリがうまく...
-
メールの本文が取得できない
-
PHPからメールを送る@さくらイ...
-
指定した時間にPHPプログラムを...
-
mail関数を使った場合のReturn-...
-
mb_send_mailでのメール送信が...
-
cronでメールを送信すると文字...
-
mb_send_mailについて
-
ワードプレス 予約システム
-
mb_send_mailでタイトルにハテ...
-
mb_send_mail()が使えない
-
PHPで、一度に大量のメールの送...
-
phpでのメール送信
-
PHP4.4.1でmb_send_mailの送信...
-
PHPでのフォーム送信・・・・
-
コマンドプロンプト、VBSでの添...
-
メールアドレス形式チェックソ...
おすすめ情報