Skip to content

Commit 1267d76

Browse files
authored
[BAEL-5518] Create Array of Regex Matches (eugenp#12052)
* opokharel's code for "A quick and practical example of Hexagonal Architecture in Java" * opokharel - added unit Tests * [BAEL-5518] by @opokharel * updated Files * updated formatting * whitespaceFix * [BAEL-5518] Create Array of Regex Matches * reCreatingPR
1 parent 280d75c commit 1267d76

File tree

2 files changed

+57
-0
lines changed

2 files changed

+57
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package regex.array;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
import java.util.regex.*;
6+
7+
class RegexMatches {
8+
9+
String[] regexMatch(String strSearch)
10+
{
11+
List<String> matchesList = new ArrayList<String>();
12+
String stringToSearch = strSearch;
13+
Pattern p1 = Pattern.compile("780{1}\\d{7}");
14+
Matcher m1 = p1.matcher(stringToSearch);
15+
while (m1.find())
16+
{
17+
matchesList.add(m1.group());
18+
}
19+
int sizeOfNewArray = matchesList.size();
20+
String newArrayOfMatches[] = new String[sizeOfNewArray];
21+
matchesList.toArray(newArrayOfMatches);
22+
return newArrayOfMatches;
23+
}
24+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package regex.array;
2+
3+
import static org.junit.jupiter.api.Assertions.*;
4+
import org.junit.jupiter.api.Test;
5+
6+
import regex.array.RegexMatches;
7+
8+
class RegexMatchesUnitTest {
9+
10+
@Test
11+
void whenFourNums_thenFourMatches() {
12+
RegexMatches rm = new RegexMatches();
13+
String actual[] = rm.regexMatch("7801111211fsdafasdfa 7802222222 sadfsadfsda7803333333 sadfdasfasd 7804444444");
14+
15+
assertArrayEquals(new String[] {"7801111211", "7802222222", "7803333333", "7804444444"}, actual, "success");
16+
}
17+
18+
@Test
19+
void whenThreeNums_thenThreeMatches() {
20+
RegexMatches rm = new RegexMatches();
21+
String actual[] = rm.regexMatch("7801111211fsdafasdfa 780222222 sadfsadfsda7803333333 sadfdasfasd 7804444444");
22+
23+
assertArrayEquals(new String[] {"7801111211", "7803333333", "7804444444"}, actual, "success");
24+
}
25+
26+
@Test
27+
void whenZeroNums_thenZeroMatches() {
28+
RegexMatches rm = new RegexMatches();
29+
String actual[] = rm.regexMatch("78011111fsdafasdfa 780222222 sadfsadfsda78033333 sadfdasfasd 7804444");
30+
31+
assertArrayEquals(new String[] {}, actual, "success");
32+
}
33+
}

0 commit comments

Comments
 (0)