Use strings instead of regex for replace task
Project: http://git-wip-us.apache.org/repos/asf/flex-utilities/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-utilities/commit/5d5d00ff Tree: http://git-wip-us.apache.org/repos/asf/flex-utilities/tree/5d5d00ff Diff: http://git-wip-us.apache.org/repos/asf/flex-utilities/diff/5d5d00ff Branch: refs/heads/develop Commit: 5d5d00ff198799f8ae1058d7ce13ea07d8796b77 Parents: 0ed7eec Author: Alex Harui <aha...@apache.org> Authored: Sat Jan 4 22:31:34 2014 -0800 Committer: Alex Harui <aha...@apache.org> Committed: Sat Jan 4 22:31:34 2014 -0800 ---------------------------------------------------------------------- ant_on_air/src/org/apache/flex/ant/tags/Replace.as | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/5d5d00ff/ant_on_air/src/org/apache/flex/ant/tags/Replace.as ---------------------------------------------------------------------- diff --git a/ant_on_air/src/org/apache/flex/ant/tags/Replace.as b/ant_on_air/src/org/apache/flex/ant/tags/Replace.as index dc39b5d..064173a 100644 --- a/ant_on_air/src/org/apache/flex/ant/tags/Replace.as +++ b/ant_on_air/src/org/apache/flex/ant/tags/Replace.as @@ -75,13 +75,11 @@ package org.apache.flex.ant.tags fs.open(f, FileMode.READ); var s:String = fs.readUTFBytes(fs.bytesAvailable); fs.close(); - var tokens:Vector.<RegExp> = new Vector.<RegExp>(); + var tokens:Vector.<String> = new Vector.<String>(); var reps:Vector.<String> = new Vector.<String>(); - var regex:RegExp; if (token != null) { - regex = new RegExp(token, "g"); - tokens.push(regex); + tokens.push(token); reps.push(value); } if (numChildren > 0) @@ -90,15 +88,15 @@ package org.apache.flex.ant.tags { var rf:ReplaceFilter = getChildAt(i) as ReplaceFilter; rf.setContext(context); - regex = new RegExp(rf.token, "g"); - tokens.push(regex); + tokens.push(rf.token); reps.push(rf.value); } } var n:int = tokens.length; for (i = 0; i < n; i++) { - s = s.replace(tokens[i], reps[i]); + while (s.indexOf(tokens[i]) != -1) + s = s.replace(tokens[i], reps[i]); } fs.open(f, FileMode.WRITE); fs.writeUTFBytes(s);