Name
match()
Description
This function is used to apply a regular expression to a piece of text, and
return matching groups (elements found inside parentheses) as a String
array. If there are no matches, a null value will be returned. If no groups
are specified in the regular expression, but the sequence matches, an array
of length 1 (with the matched text as the first element of the array) will
be returned.
To use the function, first check to see if the result is null. If the
result is null, then the sequence did not match at all. If the sequence did
match, an array is returned.
If there are groups (specified by sets of parentheses) in the regular
expression, then the contents of each will be returned in the array.
Element [0] of a regular expression match returns the entire matching
string, and the match groups start at element [1] (the first group is [1],
the second [2], and so on).
The syntax can be found in the reference for Java's Pattern
class. For regular expression syntax, read the
Java
Tutorial on the topic.
Examples
String s = "Inside a tag, you will find <tag>content</tag>."; String[] m = match(s, "<tag>(.*?)</tag>"); println("Found '" + m[1] + "' inside the tag."); // Prints to the console: // "Found 'content' inside the tag."
String s1 = "Have you ever heard of a thing called fluoridation. "; s1 += "Fluoridation of water?"; String s2 = "Uh? Yes, I-I have heard of that, Jack, yes. Yes."; String[] m1 = match(s1, "fluoridation"); if (m1 != null) { // If not null, then a match was found // This will print to the console, since a match was found. println("Found a match in '" + s1 + "'"); } else { println("No match found in '" + s1 + "'"); } String[] m2 = match(s2, "fluoridation"); if (m2 != null) { println("Found a match in '" + s2 + "'"); } else { // This will print to the console, since no match was found. println("No match found in '" + s2 + "'"); }
Syntax
match(str, regexp)
Parameters
str
(String)
the String to be searchedregexp
(String)
the regexp to be used for matching
Return
String[]
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.