この投稿からjavascriptメール検証コードを取得しました。すべての回答によると、RFC2822正規表現は次のとおりです。
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?
これをjsに含めようとしましたが、構文エラーが発生します。
var email = this.value;
if(email.match(/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/) )
{
//matched...
} else {
//not matched..
}
eclipseを使用していますが、このコードを入力するとすぐにエラーが発生します。長いリストからのエラーのいくつかはここにあります
Multiple markers at this line
- Syntax error on tokens, ArrayLiteralHeader expected instead
- Syntax error on token "?", invalid Expression
- Syntax error on token "Invalid Character", delete this token
- Syntax error on tokens, delete these tokens
- Syntax error, insert ")" to complete Arguments
- Missing semicolon
- Syntax error on token "Invalid Character", delete this token
- Syntax error, insert ")" to complete PrimaryNoNewArray
- Syntax error on tokens, ArrayLiteralHeader expected instead
- Syntax error on token "^", invalid (
メール検証正規表現をコードに適切に含める方法を教えてください。
編集
ブラウザコンソールで試してみました。まったく同じ構文がchromejsコンソールで機能します。これが出力です
ありがとう