您可以在ActionScript中放置替换文本的功能吗?
例如,您可以这样做:
string = string.replace(/\b\w+\b/g, "word");
这样做:
string = string.replace(/\b\w+\b/g, function(m){
return /^[A-Z]/.test(m) ? "Word" : "word"
});
我收到了这个错误:
ArgumentError: Error #1063: Argument count mismatch on Function/<anonymous>(). Expected 1, got 3.
at String$/_replace()
答案 0 :(得分:0)
我找到了更多信息here。
所以虽然这适用于JavaScript:
string = string.replace(/\b\w+\b/g, function(m){
return /^[A-Z]/.test(m) ? "Word" : "word"
});
我们必须删除参数并使用所有函数可用的arguments对象,如:
string = string.replace(/\b\w+\b/g, function():String {
var match:String = arguments[0];
//var matchIndex:int = arguments[arguments.length-2];
//var updatedString:String = arguments[arguments.length-1];
return /^[A-Z]/.test(match) ? "Word" : "word"
});
以下是有关这些参数的更多说明:
当您指定函数作为repl时,replace()方法将传递 函数的以下参数: