aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java105
1 files changed, 0 insertions, 105 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java
deleted file mode 100644
index 3ca80706..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/util/regexp/Jdk14RegexpRegexp.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.util.regexp;
-
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.apache.tools.ant.BuildException;
-
-/***
- * Regular expression implementation using the JDK 1.4 regular expression package
- */
-public class Jdk14RegexpRegexp extends Jdk14RegexpMatcher implements Regexp {
-
- private static final int DECIMAL = 10;
-
- /** Constructor for Jdk14RegexpRegexp */
- public Jdk14RegexpRegexp() {
- super();
- }
-
- /**
- * Convert ant regexp substitution option to jdk1.4 options.
- *
- * @param options the ant regexp options
- * @return the jdk14 substition options
- */
- protected int getSubsOptions(int options) {
- int subsOptions = REPLACE_FIRST;
- if (RegexpUtil.hasFlag(options, REPLACE_ALL)) {
- subsOptions = REPLACE_ALL;
- }
- return subsOptions;
- }
-
- /**
- * Perform a substitution on the regular expression.
- * @param input The string to substitute on
- * @param argument The string which defines the substitution
- * @param options The list of options for the match and replace.
- * @return the result of the operation
- * @throws BuildException on error
- */
- public String substitute(String input, String argument, int options)
- throws BuildException {
- // translate \1 to $(1) so that the Matcher will work
- StringBuffer subst = new StringBuffer();
- for (int i = 0; i < argument.length(); i++) {
- char c = argument.charAt(i);
- if (c == '$') {
- subst.append('\\');
- subst.append('$');
- } else if (c == '\\') {
- if (++i < argument.length()) {
- c = argument.charAt(i);
- int value = Character.digit(c, DECIMAL);
- if (value > -1) {
- subst.append("$").append(value);
- } else {
- subst.append(c);
- }
- } else {
- // TODO - should throw an exception instead?
- subst.append('\\');
- }
- } else {
- subst.append(c);
- }
- }
- argument = subst.toString();
-
- int sOptions = getSubsOptions(options);
- Pattern p = getCompiledPattern(options);
- StringBuffer sb = new StringBuffer();
-
- Matcher m = p.matcher(input);
- if (RegexpUtil.hasFlag(sOptions, REPLACE_ALL)) {
- sb.append(m.replaceAll(argument));
- } else {
- boolean res = m.find();
- if (res) {
- m.appendReplacement(sb, argument);
- m.appendTail(sb);
- } else {
- sb.append(input);
- }
- }
- return sb.toString();
- }
-}