java substring regex

New York Housing May 11 F
New York Housing May12 Jun12 F
New York Housing May 12 Aug 12 O
NYMEX RBOB Gasoline Options Jan10 O

The last digit can be either F or O. The spaces can be present or not in between Month and Year and SecurityType (F or O)

Can you please give me the method to get the substring such that the method should return
201105 for the first one
201205201206 for the second one
201205201208 for the third one.
201001 for the fourth one.

in the fastest efficient way possible?

I need this in Java
srikanthradAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
CEHJConnect With a Mentor Commented:
Put those strings into an array called 'DATES' then try:

final Pattern DATE_PAT = Pattern.compile("([MJASONDF][a-z]{2})\\s*?(\\d{2})");
	for (String s : DATES) {
	    Matcher m = DATE_PAT.matcher(s);
	    while(m.find()) {
		System.out.println(m.group(1) + " " + m.group(2));
	    }
	    System.out.println();	
	}

Open in new window

0
 
srikanthradAuthor Commented:
Can you please explain the regular expression that is being used in the Pattern? Thanks.
0
 
CEHJCommented:
What bit don't you understand?
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.