У меня есть проект C#, который я намерен передать в Objective-C. Из того, что я понимаю об Obj-C, похоже, что существует множество запущенных вариантов Regex, но я ничего не вижу о способе замены с помощью обратного вызова.Есть ли регулярное выражение Objective-c с эквивалентом обратного вызова/C# MatchEvaluator?
Я ищу что-то, что является эквивалентом делегата C# MatchEvaluator или preg_replace_callback PHP. Пример того, что я хочу сделать в C# есть -
// change input so each word is followed a number showing how many letters it has
string inputString = "Hello, how are you today ?";
Regex theRegex = new Regex(@"\w+");
string outputString = theRegex.Replace(inputString, delegate (Match thisMatch){
return thisMatch.Value + thisMatch.Value.Length;
});
// outputString is now 'Hello5, how3 are3 you3 today5 ?'
Как я мог бы сделать это в Objective-C? В моей реальной ситуации Regex имеет как взгляды, так и взгляды в нем, хотя любая альтернатива, связанная с поиском строк заранее, а затем с выполнением серии прямых замеров строк, не будет работать, к сожалению.