SlideShare a Scribd company logo
Hashim Naseer Lokasher
Muazzam Ali Sundhu
Haseeb Mehmood
Gohar Naseer
Muhammad Qasim Ali

11014119-129
11014119-099
11014119-089
11014119-087
11014119-128

THEORY OF AUTOMATA
PROJECT TITLE: EMAIL VALIDATOR
Introduction
Email Validator
Email Validator

What does Validation means?
Validation
Validation is the process of checking data against a
standard or requirement.
The term is commonly used when:
Checking the information entered by a person when
storing data, sending information or using an online
service (FORM VALIDATION).
Email Validation
So,
Email Validation means to validate
and check an email address.
Our Project
Is a email validator, which
Validates an Email Address
Check the grammar and syntax
Can be used in Data Entry forms and
Applications
Screenshot
C# Programming Language is
used for the development of this
application.

WinForm and Regular Expressions
class is also used
Program Working
Email Validator
So,
What is a
Valid Email Address?
Valid Email Address
There's only one real answer to this:
A valid email address is one that you can send emails to
Contemporary email addresses consist of a "local part"
separated from a "domain part" (a fully-qualified domain
name) by an at-sign ("@").

Mymail@mycompany.com is a valid Email Address
Regular Expressions
 If you only want to check if an address is grammatically
correct then you could use a regular expression
 Using a regular expression that recognizes email addresses
could be useful in various situations:
For example
to scan for email addresses in a document,

to validate user input,
or as an integrity constraint on a data repository.
Regular Expressions
Regular expressions are a very cool feature for
pattern recognition in strings.
Mathematically speaking regular expressions are
parsed through a "finite state machine".
As the name implies, such a machine has only a
finite number of states, and it has no external
memory attached.
Parsing
Parsing or syntactic analysis is the process of
analysing a string of symbols, either in natural
language or in computer languages,
according to the rules of a formal grammar.
Regular Expression Processor
A regular expression processor processes a regular
expression statement expressed in terms of a
grammar in a given formal language, and with
that examines the target text string, parsing it to
identify substrings that are members of its
language, the regular expressions.
"^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$"
Regular Expression for Email Validation
Myname@mycompany.com can be validated as

"^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$"
Myname

@

mycompany .

com

We compared the given email address with the upper RegEx to validate it is synthetically
correct or not.
Regular Expressions
Any validation problems that involve
recursion, option, limitation is easier
to solve with regular expressions than
using other ways (like if-else if-else,
while condition)
Regular Expressions
Regular Expressions can be used to
Test if a string matches some pattern.

Scan for virus signatures.
Process natural language.
Search for information using Google.

Search for markers in human genome
Search-and-replace in a word processors.
Validate data-entry fields (dates, email, URL, credit card)
Email Address Standards
There are acknowledged standards for what constitutes a valid
email address.

These are defined in the Request For Comments documents (RFCs)
The syntax of email addresses has been defined in various RFCs,
most notably RFC 822 and RFC 5322.

We u s e d R F C 5 3 2 2 , a s t h i s i s t h e l a t e s t s t a n d a r d .
Code Snippet
string pattern = @"^[a-z][a-z|0-9|]*([_][a-z|0-9]+)*([.][a-z|" +

@"0-9]+([_][a-z|0-9]+)*)?@[a-z][a-z|0-9|]*.([a-z]" +
@"[a-z|0-9]*(.[a-z][a-z|0-9]*)?)$";

System.Text.RegularExpressions.Match match =
Regex.Match(textBox1.Text.Trim(), pattern, RegexOptions.IgnoreCase);
Finite State Machine
ANY
Question?
Thanks

More Related Content

What's hot

Web Application Introduction
Web Application  IntroductionWeb Application  Introduction
Web Application Introduction
shaojung
 
Relationship Among Token, Lexeme & Pattern
Relationship Among Token, Lexeme & PatternRelationship Among Token, Lexeme & Pattern
Relationship Among Token, Lexeme & Pattern
Bharat Rathore
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysisraosir123
 
An Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java ScriptAn Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java Script
Fahim Abdullah
 
Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface) Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface)
Vibhawa Nirmal
 
Finite Automata in compiler design
Finite Automata in compiler designFinite Automata in compiler design
Finite Automata in compiler design
Riazul Islam
 
Web services SOAP
Web services SOAPWeb services SOAP
Web services SOAP
princeirfancivil
 
Intro to Javascript
Intro to JavascriptIntro to Javascript
Intro to Javascript
Anjan Banda
 
Regular Expression in Compiler design
Regular Expression in Compiler designRegular Expression in Compiler design
Regular Expression in Compiler design
Riazul Islam
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMSkoolkampus
 
Unit01 dbms 2
Unit01 dbms 2Unit01 dbms 2
Unit01 dbms 2
Venkat Reddy
 
Web technology lab manual
Web technology lab manualWeb technology lab manual
Web technology lab manual
neela madheswari
 
Ruby on Rails Presentation
Ruby on Rails PresentationRuby on Rails Presentation
Ruby on Rails Presentation
adamcookeuk
 
Web (HTTP) request to response life cycle
Web (HTTP) request to response life cycleWeb (HTTP) request to response life cycle
Web (HTTP) request to response life cycle
Gopakumar Kunduveetil
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web services
Nikmesoft Ltd
 
Laravel ppt
Laravel pptLaravel ppt
Laravel ppt
Mayank Panchal
 

What's hot (20)

Web Application Introduction
Web Application  IntroductionWeb Application  Introduction
Web Application Introduction
 
Relationship Among Token, Lexeme & Pattern
Relationship Among Token, Lexeme & PatternRelationship Among Token, Lexeme & Pattern
Relationship Among Token, Lexeme & Pattern
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysis
 
An Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java ScriptAn Overview of HTML, CSS & Java Script
An Overview of HTML, CSS & Java Script
 
Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface) Introduction to APIs (Application Programming Interface)
Introduction to APIs (Application Programming Interface)
 
Finite Automata in compiler design
Finite Automata in compiler designFinite Automata in compiler design
Finite Automata in compiler design
 
How email works
How email worksHow email works
How email works
 
Php introduction
Php introductionPhp introduction
Php introduction
 
Web services SOAP
Web services SOAPWeb services SOAP
Web services SOAP
 
Intro to Javascript
Intro to JavascriptIntro to Javascript
Intro to Javascript
 
Regular Expression in Compiler design
Regular Expression in Compiler designRegular Expression in Compiler design
Regular Expression in Compiler design
 
7. Relational Database Design in DBMS
7. Relational Database Design in DBMS7. Relational Database Design in DBMS
7. Relational Database Design in DBMS
 
Unit01 dbms 2
Unit01 dbms 2Unit01 dbms 2
Unit01 dbms 2
 
Web technology lab manual
Web technology lab manualWeb technology lab manual
Web technology lab manual
 
Smtp
SmtpSmtp
Smtp
 
How e mail works
How e mail worksHow e mail works
How e mail works
 
Ruby on Rails Presentation
Ruby on Rails PresentationRuby on Rails Presentation
Ruby on Rails Presentation
 
Web (HTTP) request to response life cycle
Web (HTTP) request to response life cycleWeb (HTTP) request to response life cycle
Web (HTTP) request to response life cycle
 
[Android] Web services
[Android] Web services[Android] Web services
[Android] Web services
 
Laravel ppt
Laravel pptLaravel ppt
Laravel ppt
 

Viewers also liked

Tips for teaching writing with technology
Tips for teaching writing with technologyTips for teaching writing with technology
Tips for teaching writing with technology
Carly Friesen
 
MSTP
MSTPMSTP
validation-of-email-addresses-collected-offline
validation-of-email-addresses-collected-offlinevalidation-of-email-addresses-collected-offline
validation-of-email-addresses-collected-offline
Kenscio Digital Marketing Pvt Ltd
 
Java Regular Expression PART II
Java Regular Expression PART IIJava Regular Expression PART II
Java Regular Expression PART II
Abdul Rahman Sherzad
 
Guidelines for technical writing documents
Guidelines for technical writing documentsGuidelines for technical writing documents
Guidelines for technical writing documents
Rajesh Singamsetty
 
Regular Expression
Regular ExpressionRegular Expression
Regular Expression
Mahzad Zahedi
 
Basic Rules Of English Grammar
Basic Rules Of English GrammarBasic Rules Of English Grammar
Basic Rules Of English GrammarOpeyemi Akinsanya
 
Javascript
JavascriptJavascript
Javascript
Nagarajan
 
Introduction to Regular Expressions
Introduction to Regular ExpressionsIntroduction to Regular Expressions
Introduction to Regular Expressions
Matt Casto
 
Regular Expressions 101
Regular Expressions 101Regular Expressions 101
Regular Expressions 101Raj Rajandran
 
Java script
Java scriptJava script
Java script
Jay Patel
 

Viewers also liked (13)

Tips for teaching writing with technology
Tips for teaching writing with technologyTips for teaching writing with technology
Tips for teaching writing with technology
 
MSTP
MSTPMSTP
MSTP
 
validation-of-email-addresses-collected-offline
validation-of-email-addresses-collected-offlinevalidation-of-email-addresses-collected-offline
validation-of-email-addresses-collected-offline
 
Java Regular Expression PART II
Java Regular Expression PART IIJava Regular Expression PART II
Java Regular Expression PART II
 
Guidelines for technical writing documents
Guidelines for technical writing documentsGuidelines for technical writing documents
Guidelines for technical writing documents
 
Regular Expression
Regular ExpressionRegular Expression
Regular Expression
 
Basic Rules Of English Grammar
Basic Rules Of English GrammarBasic Rules Of English Grammar
Basic Rules Of English Grammar
 
Javascript
JavascriptJavascript
Javascript
 
Regular expression (compiler)
Regular expression (compiler)Regular expression (compiler)
Regular expression (compiler)
 
Regular Expressions
Regular ExpressionsRegular Expressions
Regular Expressions
 
Introduction to Regular Expressions
Introduction to Regular ExpressionsIntroduction to Regular Expressions
Introduction to Regular Expressions
 
Regular Expressions 101
Regular Expressions 101Regular Expressions 101
Regular Expressions 101
 
Java script
Java scriptJava script
Java script
 

Similar to Email Validation

02. input validation module v5
02. input validation module v502. input validation module v5
02. input validation module v5
Eoin Keary
 
Validate Email with JavaScript.pdf
Validate Email with JavaScript.pdfValidate Email with JavaScript.pdf
Validate Email with JavaScript.pdf
EmailConcern
 
SWE-6 TESTING.pptx
SWE-6 TESTING.pptxSWE-6 TESTING.pptx
SWE-6 TESTING.pptx
prashant821809
 
Introduction to apex code
Introduction to apex codeIntroduction to apex code
Introduction to apex codeEdwinOstos
 
Intro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite AppsIntro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite Appsdreamforce2006
 
GCSECS-DefensiveDesign.pptx
GCSECS-DefensiveDesign.pptxGCSECS-DefensiveDesign.pptx
GCSECS-DefensiveDesign.pptx
azida3
 
Information Retrieval and Extraction
Information Retrieval and ExtractionInformation Retrieval and Extraction
Information Retrieval and Extraction
Christopher Frenz
 
Amazon Simple Email Service
Amazon Simple Email ServiceAmazon Simple Email Service
Amazon Simple Email Servicechrisawheeler
 
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
Databricks
 
Data Entry Operator Certification
Data Entry Operator CertificationData Entry Operator Certification
Data Entry Operator Certification
Vskills
 
SkillPoint™ VRx Recruiting Software
SkillPoint™ VRx Recruiting SoftwareSkillPoint™ VRx Recruiting Software
SkillPoint™ VRx Recruiting Software
Platina Software Pvt. Ltd.
 
Enron Email data set mining
Enron Email data set miningEnron Email data set mining
Enron Email data set miningAvik Das
 
Secure Dot Net Programming
Secure Dot Net ProgrammingSecure Dot Net Programming
Secure Dot Net ProgrammingAdam Getchell
 
Computer Programming for Lawyers
Computer Programming for LawyersComputer Programming for Lawyers
Computer Programming for LawyersNehal Madhani
 
Testers Desk Presentation
Testers Desk PresentationTesters Desk Presentation
Testers Desk Presentation
Quality Testing
 
Ebu class edgescan-2017
Ebu class edgescan-2017Ebu class edgescan-2017
Ebu class edgescan-2017
Eoin Keary
 
Text Analytics
Text AnalyticsText Analytics
Text AnalyticsAjay Ram
 
Form Validation in JavaScript
Form Validation in JavaScriptForm Validation in JavaScript
Form Validation in JavaScript
Ravi Bhadauria
 
Session4-Authentication
Session4-AuthenticationSession4-Authentication
Session4-Authentication
zakieh alizadeh
 

Similar to Email Validation (20)

02. input validation module v5
02. input validation module v502. input validation module v5
02. input validation module v5
 
Validate Email with JavaScript.pdf
Validate Email with JavaScript.pdfValidate Email with JavaScript.pdf
Validate Email with JavaScript.pdf
 
SWE-6 TESTING.pptx
SWE-6 TESTING.pptxSWE-6 TESTING.pptx
SWE-6 TESTING.pptx
 
Introduction to apex code
Introduction to apex codeIntroduction to apex code
Introduction to apex code
 
Intro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite AppsIntro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite Apps
 
GCSECS-DefensiveDesign.pptx
GCSECS-DefensiveDesign.pptxGCSECS-DefensiveDesign.pptx
GCSECS-DefensiveDesign.pptx
 
Information Retrieval and Extraction
Information Retrieval and ExtractionInformation Retrieval and Extraction
Information Retrieval and Extraction
 
Amazon Simple Email Service
Amazon Simple Email ServiceAmazon Simple Email Service
Amazon Simple Email Service
 
Amazon Simple Email Service 101
Amazon Simple Email Service 101Amazon Simple Email Service 101
Amazon Simple Email Service 101
 
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
Using AI for Providing Insights and Recommendations on Activity Data Alexis R...
 
Data Entry Operator Certification
Data Entry Operator CertificationData Entry Operator Certification
Data Entry Operator Certification
 
SkillPoint™ VRx Recruiting Software
SkillPoint™ VRx Recruiting SoftwareSkillPoint™ VRx Recruiting Software
SkillPoint™ VRx Recruiting Software
 
Enron Email data set mining
Enron Email data set miningEnron Email data set mining
Enron Email data set mining
 
Secure Dot Net Programming
Secure Dot Net ProgrammingSecure Dot Net Programming
Secure Dot Net Programming
 
Computer Programming for Lawyers
Computer Programming for LawyersComputer Programming for Lawyers
Computer Programming for Lawyers
 
Testers Desk Presentation
Testers Desk PresentationTesters Desk Presentation
Testers Desk Presentation
 
Ebu class edgescan-2017
Ebu class edgescan-2017Ebu class edgescan-2017
Ebu class edgescan-2017
 
Text Analytics
Text AnalyticsText Analytics
Text Analytics
 
Form Validation in JavaScript
Form Validation in JavaScriptForm Validation in JavaScript
Form Validation in JavaScript
 
Session4-Authentication
Session4-AuthenticationSession4-Authentication
Session4-Authentication
 

Recently uploaded

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 

Recently uploaded (20)

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 

Email Validation

  • 1. Hashim Naseer Lokasher Muazzam Ali Sundhu Haseeb Mehmood Gohar Naseer Muhammad Qasim Ali 11014119-129 11014119-099 11014119-089 11014119-087 11014119-128 THEORY OF AUTOMATA PROJECT TITLE: EMAIL VALIDATOR
  • 3. Email Validator What does Validation means?
  • 4. Validation Validation is the process of checking data against a standard or requirement. The term is commonly used when: Checking the information entered by a person when storing data, sending information or using an online service (FORM VALIDATION).
  • 5. Email Validation So, Email Validation means to validate and check an email address.
  • 6. Our Project Is a email validator, which Validates an Email Address Check the grammar and syntax Can be used in Data Entry forms and Applications
  • 7. Screenshot C# Programming Language is used for the development of this application. WinForm and Regular Expressions class is also used
  • 9. So, What is a Valid Email Address?
  • 10. Valid Email Address There's only one real answer to this: A valid email address is one that you can send emails to Contemporary email addresses consist of a "local part" separated from a "domain part" (a fully-qualified domain name) by an at-sign ("@"). Mymail@mycompany.com is a valid Email Address
  • 11. Regular Expressions  If you only want to check if an address is grammatically correct then you could use a regular expression  Using a regular expression that recognizes email addresses could be useful in various situations: For example to scan for email addresses in a document, to validate user input, or as an integrity constraint on a data repository.
  • 12. Regular Expressions Regular expressions are a very cool feature for pattern recognition in strings. Mathematically speaking regular expressions are parsed through a "finite state machine". As the name implies, such a machine has only a finite number of states, and it has no external memory attached.
  • 13. Parsing Parsing or syntactic analysis is the process of analysing a string of symbols, either in natural language or in computer languages, according to the rules of a formal grammar.
  • 14. Regular Expression Processor A regular expression processor processes a regular expression statement expressed in terms of a grammar in a given formal language, and with that examines the target text string, parsing it to identify substrings that are members of its language, the regular expressions.
  • 16. Regular Expression for Email Validation Myname@mycompany.com can be validated as "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$" Myname @ mycompany . com We compared the given email address with the upper RegEx to validate it is synthetically correct or not.
  • 17. Regular Expressions Any validation problems that involve recursion, option, limitation is easier to solve with regular expressions than using other ways (like if-else if-else, while condition)
  • 18. Regular Expressions Regular Expressions can be used to Test if a string matches some pattern. Scan for virus signatures. Process natural language. Search for information using Google. Search for markers in human genome Search-and-replace in a word processors. Validate data-entry fields (dates, email, URL, credit card)
  • 19. Email Address Standards There are acknowledged standards for what constitutes a valid email address. These are defined in the Request For Comments documents (RFCs) The syntax of email addresses has been defined in various RFCs, most notably RFC 822 and RFC 5322. We u s e d R F C 5 3 2 2 , a s t h i s i s t h e l a t e s t s t a n d a r d .
  • 20. Code Snippet string pattern = @"^[a-z][a-z|0-9|]*([_][a-z|0-9]+)*([.][a-z|" + @"0-9]+([_][a-z|0-9]+)*)?@[a-z][a-z|0-9|]*.([a-z]" + @"[a-z|0-9]*(.[a-z][a-z|0-9]*)?)$"; System.Text.RegularExpressions.Match match = Regex.Match(textBox1.Text.Trim(), pattern, RegexOptions.IgnoreCase);