я нашел больше информации here.
Таким образом, хотя это работает в JavaScript:
string = string.replace(/\b\w+\b/g, function(m){
return /^[A-Z]/.test(m) ? "Word" : "word"
});
Мы должны удалить параметр и использовать объект доступны аргументы всех функций следующим образом:
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"
});
Вот подробное описание на них параметры:
При указании функции как замены метод replace() передает следующий параграф метров до функции:
- Соответствующая часть строки.
- Любые скопированные совпадающие групповые совпадения представлены в качестве следующих аргументов. Количество аргументов, переданных таким образом, будет варьироваться от в зависимости от количества скобок. Вы можете определить количество скобок, проверив аргументы.length - 3 в пределах функционального кода.
- Позиция индекса в строке, где начинается совпадение.
- Полная строка.