MarkDacek commented on a change in pull request #395: Replaces the given
String, with the String which is nested in between two Strings.
URL: https://github.com/apache/commons-lang/pull/395#discussion_r247362048
##########
File path: src/main/java/org/apache/commons/lang3/StringUtils.java
##########
@@ -3124,6 +3124,41 @@ public static String substringBetween(final String str,
final String open, final
return list.toArray(new String [list.size()]);
}
+ /**
+ * <p>Replaces the given String, with the String which is nested in
between two Strings.</p>
+ *
+ * <p>A {@code null} input String returns {@code null}.
+ * A {@code null} open/close returns {@code null} (no match).
+ * An empty ("") open and close returns an empty string.</p>
+ *
+ * @param str the String containing the substring, may be null
+ * @param replace the Sting to be replaced, which is nested in between
open and close substrings
+ * @param open the String before the substring, may be null
+ * @param close the String after the substring, may be null
+ * @return the substring, {@code null} if no match
+ */
+ public static String replaceSubstringInBetween(final String str, final
String replace, final String open, final String close) {
+ if (str == null || open == null || close == null) {
+ return null;
+ }
+ final int start = str.indexOf(open);
+ if (start != INDEX_NOT_FOUND) {
+ String preceding = "";
+ if (start > 0) {
+ preceding = str.substring(0, start);
+ }
+ final int end = str.indexOf(close, start + open.length());
+ if (end != INDEX_NOT_FOUND) {
+ String exceding = "";
Review comment:
exceeding
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services