Adding replace function

* renamed gsub function to replace
* reordered replace's function arguments to be much more readable
* added support for replacement (Regexp) options
This commit is contained in:
Jake Bellacera
2014-02-06 23:29:14 -08:00
parent fda1774ddb
commit 089bf1b78a
3 changed files with 10 additions and 8 deletions

View File

@@ -218,12 +218,12 @@ tree.functions = {
escape: function (str) {
return new(tree.Anonymous)(encodeURI(str.value).replace(/=/g, "%3D").replace(/:/g, "%3A").replace(/#/g, "%23").replace(/;/g, "%3B").replace(/\(/g, "%28").replace(/\)/g, "%29"));
},
gsub: function (str, regexp, replacement) {
var str = str.value;
replace: function (subject, pattern, replacement, options) {
var str = subject.value;
str = str.replace(new RegExp(regexp.value, "g"), replacement.value);
str = str.replace(new RegExp(pattern.value, options ? options.value : ""), replacement.value);
return new(tree.Quoted)('"' + str + '"', str)
return new(tree.Quoted)('"' + str + '"', str);
},
'%': function (quoted /* arg, arg, ...*/) {
var args = Array.prototype.slice.call(arguments, 1),