Meta Engineer?

This is available as Str\replace_every_l in the www repository.

Returns the "haystack" string with all occurrences of the keys of $replacements replaced by the corresponding values

namespace HH\Lib\Str;

function replace_every_l(
  \HH\Lib\Locale\Locale $locale,
  string $haystack,
  KeyedContainer<string, string> $replacements,
): string;

Strings will be normalized for comparison in encodings that support multiple representations, such as UTF-8.

Replacements are applied in the order they are specified in $replacements, and the new values are searched again for subsequent matches. For example, dict['a' => 'b', 'b' => 'c'] is equivalent to dict['a' => 'c'], but dict['b' => 'c', 'a' => 'b'] is not, despite having the same elements.

If there are multiple overlapping matches, the match occuring earlier in $replacements (not in $haystack) takes precedence.




  • string