Regex Character Classes :
[abc] : a,b or c characters only
[^abc] : Any character except a, b or c character.
[a-zA-Z] : a through z or A through Z, inclusive range.
[a-d[m-p]] : a through d or m through p
[a-z&&[def]] : d, e or f intersection.
[a-z&&[^bc]] : a through z except b and c
[a-z&&[^m-p]] : a through z and not m through p
4. Regex qualifiers :
X? : X occurs once or not at all.
X+ : X occurs once or more times.
X* : X occurs 0 or more times.
X{n} : X occurs n times only.
X{n,} : X occurs n or more times.
X{y,z} : X occurs at least y times but leass than z times.
import java.util.regex.*;
class RegexExample4{
public static void main(String args[]){
System.out.println("? quantifier ....");
System.out.println(Pattern.matches("[amn]?", "a"));//true (a or m or n comes one time)
System.out.println(Pattern.matches("[amn]?", "aaa"));//false (a comes more than one time)
System.out.println(Pattern.matches("[amn]?", "aammmnn"));//false (a m and n comes more than one time)
System.out.println(Pattern.matches("[amn]?", "aazzta"));//false (a comes more than one time)
System.out.println(Pattern.matches("[amn]?", "am"));//false (a or m or n must come one time)
System.out.println("+ quantifier ....");
System.out.println(Pattern.matches("[amn]+", "a"));//true (a or m or n once or more times)
System.out.println(Pattern.matches("[amn]+", "aaa"));//true (a comes more than one time)
System.out.println(Pattern.matches("[amn]+", "aammmnn"));//true (a or m or n comes more than once)
System.out.println(Pattern.matches("[amn]+", "aazzta"));//false (z and t are not matching pattern)
System.out.println("* quantifier ....");
System.out.println(Pattern.matches("[amn]*", "ammmna"));//true (a or m or n may come zero or more times)
}
}