10 Java Regular Expression Examples You Should Know
转自
http://www.mkyong.com/regular-expressions/10-java-regular-expression-examples-you-should-know/
Regular expression is an art of the programing, it’s hard to debug , learn and understand, but the powerful features are still attract many developers to code regular expression. Let’s explore the following 10 practical regular expression ~ enjoy
1. Username Regular Expression Pattern
^[a-z0-9_-]{3,15}$
^ # Start of the line
[a-z0-9_-] # Match characters and symbols in the list, a-z, 0-9 , underscore , hyphen
{3,15} # Length at least 3 characters and maximum length of 15
$ # End of the line
==> See the explanation and example here
2. Password Regular Expression Pattern
((?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%]).{6,20})
(# Start of group
(?=.*\d)# must contains one digit from 0-9
(?=.*[a-z])# must contains one lowercase characters
(?=.*[A-Z])# must contains one uppercase characters
(?=.*[@#$%])# must contains one special symbols in the list "@#$%"
.# match anything with previous condition checking
{6,20}# length at least 6 characters and maximum of 20
)# End of group
==> See the explanation and example here
3. Hexadecimal Color Code Regular Expression Pattern
^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$
^ #start of the line
# # must constains a "#" symbols
( # start of group #1
[A-Fa-f0-9]{6} # any strings in the list, with length of 6
| # ..or
[A-Fa-f0-9]{3} # any strings in the list, with length of 3
) # end of group #1
$ #end of the line
==> See the explanation and example here
4. Email Regular Expression Pattern
^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9]+
(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$
^#start of the line
[_A-Za-z0-9-]+# must start with string in the bracket [ ], must contains one or more (+)
(# start of group #1
\\.[_A-Za-z0-9-]+# follow by a dot "." and string in the bracket [ ], must contains one or more (+)
)*# end of group #1, this group is optional (*)
@# must contains a "@" symbol
[A-Za-z0-9]+ # follow by string in the bracket [ ], must contains one or more (+)
(# start of group #2 - first level TLD checking
\\.[A-Za-z0-9]+ # follow by a dot "." and string in the bracket [ ], must contains one or more (+)
)*# end of group #2, this group is optional (*)
(# start of group #3 - second level TLD checking
\\.[A-Za-z]{2,} # follow by a dot "." and string in the bracket [ ], with minimum length of 2
)# end of group #3
$#end of the line
==> See the explanation and example here
5. Image File Extension Regular Expression Pattern
([^\s]+(\.(?i)(jpg|png|gif|bmp))$)
(#Start of the group #1
[^\s]+# must contains one or more anything (except white space)
(# start of the group #2
\.#follow by a dot "."
(?i)#ignore the case sensitive checking
(# start of the group #3
jpg# contains characters "jpg"
|# ..or
png# contains characters "png"
|# ..or
gif# contains characters "gif"
|# ..or
bmp# contains characters "bmp"
)# end of the group #3
)# end of the group #2
$# end of the string
)#end of the group #1
==> See the explanation and example here
6. IP Address Regular Expression Pattern
^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.
([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$
^#start of the line
(# start of group #1
[01]?\\d\\d? # Can be one or two digits. If three digits appear, it must start either 0 or 1
# e.g ([0-9], [0-9][0-9],[0-1][0-9][0-9])
|# ...or
2[0-4]\\d# start with 2, follow by 0-4 and end with any digit (2[0-4][0-9])
| # ...or
25[0-5] # start with 2, follow by 5 and end with 0-5 (25[0-5])
)# end of group #2
\. # follow by a dot "."
.... # repeat with 3 time (3x)
$#end of the line
==> See the explanation and example here
7. Time Format Regular Expression Pattern
Time in 12-Hour Format Regular Expression Pattern
(1[012]|[1-9]):[0-5][0-9](\\s)?(?i)(am|pm)
(#start of group #1
1[012]# start with 10, 11, 12
|# or
[1-9]# start with 1,2,...9
)#end of group #1
:# follow by a semi colon (:)
[0-5][0-9]# follow by 0..5 and 0..9, which means 00 to 59
(\\s)?# follow by a white space (optional)
(?i)# next checking is case insensitive
(am|pm)# follow by am or pm
==> See the explanation and example here
Time in 24-Hour Format Regular Expression Pattern
([01]?[0-9]|2[0-3]):[0-5][0-9]
(#start of group #1
[01]?[0-9]# start with 0-9,1-9,00-09,10-19
|# or
2[0-3]# start with 20-23
)#end of group #1
:# follow by a semi colon (:)
[0-5][0-9]# follow by 0..5 and 0..9, which means 00 to 59
==> See the explanation and example here
8. Date Format (dd/mm/yyyy) Regular Expression Pattern
(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])/((19|20)\\d\\d)
(#start of group #1
0?[1-9]# 01-09 or 1-9
| # ..or
[12][0-9]# 10-19 or 20-29
|# ..or
3[01]# 30, 31
) #end of group #1
/# follow by a "/"
(# start of group #2
0?[1-9]#01-09 or 1-9
|#..or
1[012]#10,11,12
)# end of group #2
/#follow by a "/"
(# start of group #3
(19|20)\\d\\d# 19[0-9][0-9] or 20[0-9][0-9]
)# end of group #3
==> See the explanation and example here
9. HTML tag Regular Expression Pattern
<("[^"]*"|'[^']*'|[^'">])*>
< #start with opening tag "<"
(# start of group #1
"[^"]*"#only two double quotes are allow - "string"
|#..or
'[^']*'#only two single quotes are allow - 'string'
|#..or
[^'">]#cant contains one single quotes, double quotes and ">"
)# end of group #1
*# 0 or more
>#end with closing tag ">"
==> See the explanation and example here
10. HTML links Regular Expression Pattern
HTML A tag Regular Expression Pattern
(?i)<a([^>]+)>(.+?)</a>
(#start of group #1
?i# all checking are case insensive
)#end of group #1
<a #start with "<a"
(# start of group #2
[^>]+# anything except (">"), at least one character
)# end of group #2
># follow by ">"
(.+?)#match anything
</a># end with "</a>
Extract HTML link Regular Expression Pattern
\s*(?i)href\s*=\s*("([^"]*")|'[^']*'|([^'">\s]+));
\s* #can start with whitespace
(?i) # all checking are case insensive
href # follow by "href" word
\s*=\s* # allows spaces on either side of the equal sign,
( # start of group #1
"([^"]*") # only two double quotes are allow - "string"
| # ..or
'[^']*' # only two single quotes are allow - 'string'
| # ..or
([^'">]+) # cant contains one single / double quotes and ">"
) # end of group #1
==> See the explanation and example here
十 Java Regular Expression Examples You Should Know
10 Java Regular Expression Examples You Should Know转自http://www.mkyong.com/regular-expressions/10
