public class RegExUtils
extends java.lang.Object
Pattern
Constructor and Description |
---|
RegExUtils() |
Modifier and Type | Method and Description |
---|---|
static java.util.regex.Pattern |
dotAll(java.lang.String regex)
Compiles the given regular expression into a pattern with the
Pattern.DOTALL flag. |
static java.util.regex.Matcher |
dotAllMatcher(java.lang.String regex,
java.lang.String text)
Compiles the given regular expression into a pattern with the
Pattern.DOTALL flag, then creates a matcher that will match the given text against
this pattern. |
static java.lang.String |
removeAll(java.lang.String text,
java.util.regex.Pattern regex)
Removes each substring of the text String that matches the given regular expression pattern.
|
static java.lang.String |
removeAll(java.lang.String text,
java.lang.String regex)
Removes each substring of the text String that matches the given regular expression.
|
static java.lang.String |
removeFirst(java.lang.String text,
java.util.regex.Pattern regex)
Removes the first substring of the text string that matches the given regular expression pattern.
|
static java.lang.String |
removeFirst(java.lang.String text,
java.lang.String regex)
Removes the first substring of the text string that matches the given regular expression.
|
static java.lang.String |
removePattern(java.lang.String text,
java.lang.String regex)
Removes each substring of the source String that matches the given regular expression using the DOTALL option.
|
static java.lang.String |
replaceAll(java.lang.String text,
java.util.regex.Pattern regex,
java.lang.String replacement)
Replaces each substring of the text String that matches the given regular expression pattern with the given replacement.
|
static java.lang.String |
replaceAll(java.lang.String text,
java.lang.String regex,
java.lang.String replacement)
Replaces each substring of the text String that matches the given regular expression
with the given replacement.
|
static java.lang.String |
replaceFirst(java.lang.String text,
java.util.regex.Pattern regex,
java.lang.String replacement)
Replaces the first substring of the text string that matches the given regular expression pattern
with the given replacement.
|
static java.lang.String |
replaceFirst(java.lang.String text,
java.lang.String regex,
java.lang.String replacement)
Replaces the first substring of the text string that matches the given regular expression
with the given replacement.
|
static java.lang.String |
replacePattern(java.lang.String text,
java.lang.String regex,
java.lang.String replacement)
Replaces each substring of the source String that matches the given regular expression with the given
replacement using the
Pattern.DOTALL option. |
public static java.util.regex.Pattern dotAll(java.lang.String regex)
Pattern.DOTALL
flag.regex
- The expression to be compiledPattern.DOTALL
flag.public static java.util.regex.Matcher dotAllMatcher(java.lang.String regex, java.lang.String text)
Pattern.DOTALL
flag, then creates a matcher that will match the given text against
this pattern.regex
- The expression to be compiled.text
- The character sequence to be matched.public static java.lang.String removeAll(java.lang.String text, java.util.regex.Pattern regex)
null
safe equivalent to:
pattern.matcher(text).replaceAll(StringUtils.EMPTY)
A null
reference passed to this method is a no-op.
StringUtils.removeAll(null, *) = null StringUtils.removeAll("any", (Pattern) null) = "any" StringUtils.removeAll("any", Pattern.compile("")) = "any" StringUtils.removeAll("any", Pattern.compile(".*")) = "" StringUtils.removeAll("any", Pattern.compile(".+")) = "" StringUtils.removeAll("abc", Pattern.compile(".?")) = "" StringUtils.removeAll("A<__>\n<__>B", Pattern.compile("<.*>")) = "A\nB" StringUtils.removeAll("A<__>\n<__>B", Pattern.compile("(?s)<.*>")) = "AB" StringUtils.removeAll("A<__>\n<__>B", Pattern.compile("<.*>", Pattern.DOTALL)) = "AB" StringUtils.removeAll("ABCabc123abc", Pattern.compile("[a-z]")) = "ABC123"
text
- text to remove from, may be nullregex
- the regular expression to which this string is to be matchednull
if null String inputreplaceAll(String, Pattern, String)
,
Matcher.replaceAll(String)
,
Pattern
public static java.lang.String removeAll(java.lang.String text, java.lang.String regex)
null
safe equivalent to:
text.replaceAll(regex, StringUtils.EMPTY)
Pattern.compile(regex).matcher(text).replaceAll(StringUtils.EMPTY)
A null
reference passed to this method is a no-op.
Unlike in the removePattern(String, String)
method, the Pattern.DOTALL
option
is NOT automatically added.
To use the DOTALL option prepend "(?s)"
to the regex.
DOTALL is also known as single-line mode in Perl.
StringUtils.removeAll(null, *) = null StringUtils.removeAll("any", (String) null) = "any" StringUtils.removeAll("any", "") = "any" StringUtils.removeAll("any", ".*") = "" StringUtils.removeAll("any", ".+") = "" StringUtils.removeAll("abc", ".?") = "" StringUtils.removeAll("A<__>\n<__>B", "<.*>") = "A\nB" StringUtils.removeAll("A<__>\n<__>B", "(?s)<.*>") = "AB" StringUtils.removeAll("ABCabc123abc", "[a-z]") = "ABC123"
text
- text to remove from, may be nullregex
- the regular expression to which this string is to be matchednull
if null String inputjava.util.regex.PatternSyntaxException
- if the regular expression's syntax is invalidreplaceAll(String, String, String)
,
removePattern(String, String)
,
String.replaceAll(String, String)
,
Pattern
,
Pattern.DOTALL
public static java.lang.String removeFirst(java.lang.String text, java.util.regex.Pattern regex)
null
safe equivalent to:
pattern.matcher(text).replaceFirst(StringUtils.EMPTY)
A null
reference passed to this method is a no-op.
StringUtils.removeFirst(null, *) = null StringUtils.removeFirst("any", (Pattern) null) = "any" StringUtils.removeFirst("any", Pattern.compile("")) = "any" StringUtils.removeFirst("any", Pattern.compile(".*")) = "" StringUtils.removeFirst("any", Pattern.compile(".+")) = "" StringUtils.removeFirst("abc", Pattern.compile(".?")) = "bc" StringUtils.removeFirst("A<__>\n<__>B", Pattern.compile("<.*>")) = "A\n<__>B" StringUtils.removeFirst("A<__>\n<__>B", Pattern.compile("(?s)<.*>")) = "AB" StringUtils.removeFirst("ABCabc123", Pattern.compile("[a-z]")) = "ABCbc123" StringUtils.removeFirst("ABCabc123abc", Pattern.compile("[a-z]+")) = "ABC123abc"
text
- text to remove from, may be nullregex
- the regular expression pattern to which this string is to be matchednull
if null String inputreplaceFirst(String, Pattern, String)
,
Matcher.replaceFirst(String)
,
Pattern
public static java.lang.String removeFirst(java.lang.String text, java.lang.String regex)
null
safe equivalent to:
text.replaceFirst(regex, StringUtils.EMPTY)
Pattern.compile(regex).matcher(text).replaceFirst(StringUtils.EMPTY)
A null
reference passed to this method is a no-op.
The Pattern.DOTALL
option is NOT automatically added.
To use the DOTALL option prepend "(?s)"
to the regex.
DOTALL is also known as single-line mode in Perl.
StringUtils.removeFirst(null, *) = null StringUtils.removeFirst("any", (String) null) = "any" StringUtils.removeFirst("any", "") = "any" StringUtils.removeFirst("any", ".*") = "" StringUtils.removeFirst("any", ".+") = "" StringUtils.removeFirst("abc", ".?") = "bc" StringUtils.removeFirst("A<__>\n<__>B", "<.*>") = "A\n<__>B" StringUtils.removeFirst("A<__>\n<__>B", "(?s)<.*>") = "AB" StringUtils.removeFirst("ABCabc123", "[a-z]") = "ABCbc123" StringUtils.removeFirst("ABCabc123abc", "[a-z]+") = "ABC123abc"
text
- text to remove from, may be nullregex
- the regular expression to which this string is to be matchednull
if null String inputjava.util.regex.PatternSyntaxException
- if the regular expression's syntax is invalidreplaceFirst(String, String, String)
,
String.replaceFirst(String, String)
,
Pattern
,
Pattern.DOTALL
public static java.lang.String removePattern(java.lang.String text, java.lang.String regex)
null
safe equivalent to:
text.replaceAll("(?s)" + regex, StringUtils.EMPTY)
Pattern.compile(regex, Pattern.DOTALL).matcher(text).replaceAll(StringUtils.EMPTY)
A null
reference passed to this method is a no-op.
StringUtils.removePattern(null, *) = null StringUtils.removePattern("any", (String) null) = "any" StringUtils.removePattern("A<__>\n<__>B", "<.*>") = "AB" StringUtils.removePattern("ABCabc123", "[a-z]") = "ABC123"
text
- the source stringregex
- the regular expression to which this string is to be matchedString
replacePattern(String, String, String)
,
String.replaceAll(String, String)
,
Pattern.DOTALL
public static java.lang.String replaceAll(java.lang.String text, java.util.regex.Pattern regex, java.lang.String replacement)
null
safe equivalent to:
pattern.matcher(text).replaceAll(replacement)
A null
reference passed to this method is a no-op.
StringUtils.replaceAll(null, *, *) = null StringUtils.replaceAll("any", (Pattern) null, *) = "any" StringUtils.replaceAll("any", *, null) = "any" StringUtils.replaceAll("", Pattern.compile(""), "zzz") = "zzz" StringUtils.replaceAll("", Pattern.compile(".*"), "zzz") = "zzz" StringUtils.replaceAll("", Pattern.compile(".+"), "zzz") = "" StringUtils.replaceAll("abc", Pattern.compile(""), "ZZ") = "ZZaZZbZZcZZ" StringUtils.replaceAll("<__>\n<__>", Pattern.compile("<.*>"), "z") = "z\nz" StringUtils.replaceAll("<__>\n<__>", Pattern.compile("<.*>", Pattern.DOTALL), "z") = "z" StringUtils.replaceAll("<__>\n<__>", Pattern.compile("(?s)<.*>"), "z") = "z" StringUtils.replaceAll("ABCabc123", Pattern.compile("[a-z]"), "_") = "ABC___123" StringUtils.replaceAll("ABCabc123", Pattern.compile("[^A-Z0-9]+"), "_") = "ABC_123" StringUtils.replaceAll("ABCabc123", Pattern.compile("[^A-Z0-9]+"), "") = "ABC123" StringUtils.replaceAll("Lorem ipsum dolor sit", Pattern.compile("( +)([a-z]+)"), "_$2") = "Lorem_ipsum_dolor_sit"
text
- text to search and replace in, may be nullregex
- the regular expression pattern to which this string is to be matchedreplacement
- the string to be substituted for each matchnull
if null String inputMatcher.replaceAll(String)
,
Pattern
public static java.lang.String replaceAll(java.lang.String text, java.lang.String regex, java.lang.String replacement)
null
safe equivalent to:
text.replaceAll(regex, replacement)
Pattern.compile(regex).matcher(text).replaceAll(replacement)
A null
reference passed to this method is a no-op.
Unlike in the replacePattern(String, String, String)
method, the Pattern.DOTALL
option
is NOT automatically added.
To use the DOTALL option prepend "(?s)"
to the regex.
DOTALL is also known as single-line mode in Perl.
StringUtils.replaceAll(null, *, *) = null StringUtils.replaceAll("any", (String) null, *) = "any" StringUtils.replaceAll("any", *, null) = "any" StringUtils.replaceAll("", "", "zzz") = "zzz" StringUtils.replaceAll("", ".*", "zzz") = "zzz" StringUtils.replaceAll("", ".+", "zzz") = "" StringUtils.replaceAll("abc", "", "ZZ") = "ZZaZZbZZcZZ" StringUtils.replaceAll("<__>\n<__>", "<.*>", "z") = "z\nz" StringUtils.replaceAll("<__>\n<__>", "(?s)<.*>", "z") = "z" StringUtils.replaceAll("ABCabc123", "[a-z]", "_") = "ABC___123" StringUtils.replaceAll("ABCabc123", "[^A-Z0-9]+", "_") = "ABC_123" StringUtils.replaceAll("ABCabc123", "[^A-Z0-9]+", "") = "ABC123" StringUtils.replaceAll("Lorem ipsum dolor sit", "( +)([a-z]+)", "_$2") = "Lorem_ipsum_dolor_sit"
text
- text to search and replace in, may be nullregex
- the regular expression to which this string is to be matchedreplacement
- the string to be substituted for each matchnull
if null String inputjava.util.regex.PatternSyntaxException
- if the regular expression's syntax is invalidreplacePattern(String, String, String)
,
String.replaceAll(String, String)
,
Pattern
,
Pattern.DOTALL
public static java.lang.String replaceFirst(java.lang.String text, java.util.regex.Pattern regex, java.lang.String replacement)
null
safe equivalent to:
pattern.matcher(text).replaceFirst(replacement)
A null
reference passed to this method is a no-op.
StringUtils.replaceFirst(null, *, *) = null StringUtils.replaceFirst("any", (Pattern) null, *) = "any" StringUtils.replaceFirst("any", *, null) = "any" StringUtils.replaceFirst("", Pattern.compile(""), "zzz") = "zzz" StringUtils.replaceFirst("", Pattern.compile(".*"), "zzz") = "zzz" StringUtils.replaceFirst("", Pattern.compile(".+"), "zzz") = "" StringUtils.replaceFirst("abc", Pattern.compile(""), "ZZ") = "ZZabc" StringUtils.replaceFirst("<__>\n<__>", Pattern.compile("<.*>"), "z") = "z\n<__>" StringUtils.replaceFirst("<__>\n<__>", Pattern.compile("(?s)<.*>"), "z") = "z" StringUtils.replaceFirst("ABCabc123", Pattern.compile("[a-z]"), "_") = "ABC_bc123" StringUtils.replaceFirst("ABCabc123abc", Pattern.compile("[^A-Z0-9]+"), "_") = "ABC_123abc" StringUtils.replaceFirst("ABCabc123abc", Pattern.compile("[^A-Z0-9]+"), "") = "ABC123abc" StringUtils.replaceFirst("Lorem ipsum dolor sit", Pattern.compile("( +)([a-z]+)"), "_$2") = "Lorem_ipsum dolor sit"
text
- text to search and replace in, may be nullregex
- the regular expression pattern to which this string is to be matchedreplacement
- the string to be substituted for the first matchnull
if null String inputMatcher.replaceFirst(String)
,
Pattern
public static java.lang.String replaceFirst(java.lang.String text, java.lang.String regex, java.lang.String replacement)
null
safe equivalent to:
text.replaceFirst(regex, replacement)
Pattern.compile(regex).matcher(text).replaceFirst(replacement)
A null
reference passed to this method is a no-op.
The Pattern.DOTALL
option is NOT automatically added.
To use the DOTALL option prepend "(?s)"
to the regex.
DOTALL is also known as single-line mode in Perl.
StringUtils.replaceFirst(null, *, *) = null StringUtils.replaceFirst("any", (String) null, *) = "any" StringUtils.replaceFirst("any", *, null) = "any" StringUtils.replaceFirst("", "", "zzz") = "zzz" StringUtils.replaceFirst("", ".*", "zzz") = "zzz" StringUtils.replaceFirst("", ".+", "zzz") = "" StringUtils.replaceFirst("abc", "", "ZZ") = "ZZabc" StringUtils.replaceFirst("<__>\n<__>", "<.*>", "z") = "z\n<__>" StringUtils.replaceFirst("<__>\n<__>", "(?s)<.*>", "z") = "z" StringUtils.replaceFirst("ABCabc123", "[a-z]", "_") = "ABC_bc123" StringUtils.replaceFirst("ABCabc123abc", "[^A-Z0-9]+", "_") = "ABC_123abc" StringUtils.replaceFirst("ABCabc123abc", "[^A-Z0-9]+", "") = "ABC123abc" StringUtils.replaceFirst("Lorem ipsum dolor sit", "( +)([a-z]+)", "_$2") = "Lorem_ipsum dolor sit"
text
- text to search and replace in, may be nullregex
- the regular expression to which this string is to be matchedreplacement
- the string to be substituted for the first matchnull
if null String inputjava.util.regex.PatternSyntaxException
- if the regular expression's syntax is invalidString.replaceFirst(String, String)
,
Pattern
,
Pattern.DOTALL
public static java.lang.String replacePattern(java.lang.String text, java.lang.String regex, java.lang.String replacement)
Pattern.DOTALL
option. DOTALL is also known as single-line mode in Perl.
This call is a null
safe equivalent to:
text.replaceAll("(?s)" + regex, replacement)
Pattern.compile(regex, Pattern.DOTALL).matcher(text).replaceAll(replacement)
A null
reference passed to this method is a no-op.
StringUtils.replacePattern(null, *, *) = null StringUtils.replacePattern("any", (String) null, *) = "any" StringUtils.replacePattern("any", *, null) = "any" StringUtils.replacePattern("", "", "zzz") = "zzz" StringUtils.replacePattern("", ".*", "zzz") = "zzz" StringUtils.replacePattern("", ".+", "zzz") = "" StringUtils.replacePattern("<__>\n<__>", "<.*>", "z") = "z" StringUtils.replacePattern("ABCabc123", "[a-z]", "_") = "ABC___123" StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "_") = "ABC_123" StringUtils.replacePattern("ABCabc123", "[^A-Z0-9]+", "") = "ABC123" StringUtils.replacePattern("Lorem ipsum dolor sit", "( +)([a-z]+)", "_$2") = "Lorem_ipsum_dolor_sit"
text
- the source stringregex
- the regular expression to which this string is to be matchedreplacement
- the string to be substituted for each matchString
replaceAll(String, String, String)
,
String.replaceAll(String, String)
,
Pattern.DOTALL
Copyright © 2010 - 2023 Adobe. All Rights Reserved