Wednesday, July 6, 2016

RegularExpressionsDemo

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegularExpressionsDemo {
public static void main(String[] args) {
Pattern p = Pattern.compile("12");
Matcher m = p.matcher("1234512812789");
int count = 0;
while(m.find()){
count++;
System.out.println(m.start()+".."+m.end()+".."+m.group());
}
System.out.println("total no of occurances "+count);
}
}
---------------------------------------------------------------------------------
package GeneralDemos;

import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegularExp2 {

public static void main(String[] args) {
// TODO Auto-generated method stub

ArrayList<String> emails = new ArrayList();
emails.add("NANI.103@gmail.com");
emails.add("Chinna.A103@gmail.com");
emails.add("@abcdef@gmail.com");
emails.add("#32n#$%ani@gmail.com");
emails.add("vijay@gmail.com");
emails.add("vikram@gmail.com");
emails.add("anil@gmail.com");

// String regex ="^[A-Za-z+.][a-z0-9]@[a-z]";

String regex ="^[A-Za-z0-9+.]+[0-9]@[a-z]+(\\.[A-Za-z]{2,})$";

// String regex = "^(.+)@(.+)$";
// String regex = "^([A-Z.+])@(.+)$";
/* Regex : ^[A-Za-z0-9+_.-]+@(.+)$
In this regex, we have added some restriction osn username part of email address. Restrictions in above regex are:

1) A-Z characters allowed
2) a-z characters allowed
3) 0-9 numbers allowed
4) Additionally email may contain only dot(.), dash(-) and underscore(_)
5) Rest all characters are not allowed*/

Pattern p =Pattern.compile(regex);
for(String email:emails){
Matcher m = p.matcher(email);
if(m.matches()){
System.out.println(email+" valid mail id ");
}else{
System.out.println(email+" not a valid mail id ");
}
}

}

}
--------------------------------------------------------------------------------
package GeneralDemos;

import java.util.regex.Pattern;
public class SplitDemo {
public static void main(String[] args) {
// String regx = "\\s";  // ex for space
// String regx = "a";  // example for char
// String regx = "\\."; // . considered as Symbol
String regx = "[.]";  //. considered as Symbol
// Using String class Split
String trgString = "Raviteja.kotha.from kodad";
System.out.println("before split: "+trgString);
String[]s2 = trgString.split("[.]");
for(String s3 : s2){
System.out.println("Using String Class : "+s3);
}
//Using Pattern class Split
Pattern p = Pattern.compile(regx);
String[] s = p.split(trgString);
for(String s1 : s){
System.out.println(s1);
}

}

}

--------------------------------------------------------------------------------
package GeneralDemos;

import java.util.StringTokenizer;

public class StringTokenizerDemo {

public static void main(String[] args) {
// no pattern (default space used)
StringTokenizer st = new StringTokenizer("Hello Ravi How are you");
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
}
// "-" pattern
StringTokenizer st1 = new StringTokenizer("2016-july-07","-"); // date 'targetString' - 'R expsn/pattern'
while(st1.hasMoreTokens()){
System.out.println(st1.nextToken());
}

}

}

--------------------------------------------------------------------------------
package GeneralDemos;

import java.io.InputStream;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ValidationDemo {

public static void main(String[] args) {
System.out.println("Enter mobile number : ");
Scanner sc = new Scanner(System.in);
long l = sc.nextLong();
String value = String.valueOf(l);
String regex = "(0/91)?[7-9][0-9]{9}";

Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(value);
// if we use only m.find  it will check the part of target String according to pattern
//if pattern matches prints valid number but below expression checks entire target String with pattern
if(m.find() && m.group().equals(value)){
System.out.println(value+" is a valid number");
}else{
System.out.println(value+" is not a valid number");
}
}

}


No comments:

Post a Comment