Java regular expression example
This Java regular expression example demonstrates regex match for email, website address, social security number, date, and sentences containing a particular word.
[code language=”java”]
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Regex {
public static Pattern pattern;
public static Matcher matcher;
/**
* Prints the text that matches the given pattern
* @param input array of string
* @param regEx regular expression pattern
* @param notes a description of the pattern
*/
public static void find(String input[], String regEx, String notes) {
Pattern pattern = Pattern.compile(regEx);
System.out.println(notes + ":");
for (int i = 0; i < input.length; i++) {
matcher = pattern.matcher(input[i]);
if (matcher.find()) {
System.out.println(input[i]);
}
}
System.out.println();
}
public static void main(String[] args) throws Exception {
String[] lines = {
"Good day!",
"http://google.com/",
"sandy123@gmail.com",
"09.13.1900",
"Java regex example",
"223-99-3312",
"03/23/1982",
"Jeremy is very happy today because the weather is nice!",
"http://www.yahoo.com",
"http://www.albany.edu",
"341-92-2341",
"800-234-1023",
"ken908@yahoo.com",
"03-23-1999",
"http://www.health.org"
};
// Regular expression patterns
String emailRegex = "\\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}\\b";
String websiteRegex = "https?://(www\\.)?[A-Za-z0-9]+\\.(com|org|edu|gov|us)/?.*";
String ssnRegex = "^[0-9]{3}-[0-9]{2}-[0-9]{4}$";
String dateRegex = "^(0[1-9]|1[012])[-/.](0[1-9]|[12][0-9]|3[01])[-/.][0-9]{4}$";
String startWithGoodRegex = "^(Good).*";
String endWithExampleRegex =".*(example)$";
String happyRegex = ".*happy.*";
// Finding text with each pattern
find(lines, emailRegex, "Emails");
find(lines, websiteRegex, "Websites");
find(lines, ssnRegex, "Social Security Numbers");
find(lines, dateRegex, "Dates");
find(lines, startWithGoodRegex, "Sentence starts with ‘Good’");
find(lines, happyRegex, "Sentence contains ‘happy’");
find(lines, endWithExampleRegex, "Sentence ends with ‘example’");
}
}
[/code]
The output:
-
Emails:
sandy123@gmail.com
ken908@yahoo.com
Websites:
http://google.com/
http://www.yahoo.com
http://www.albany.edu
http://www.health.org
Social Security Numbers:
223-99-3312
341-92-2341
Dates:
09.13.1900
03/23/1982
03-23-1999
Sentence starts with ‘Good’:
Good day!
Sentence contains ‘happy’:
Jeremy is very happy today because the weather is nice!
Sentence ends with ‘example’:
Java regex example
Search within Codexpedia

Search the entire web
