Str-replace Funktion

Avatar of Kitty Giraudel
Kitty Giraudel am

Sass bietet eine Sammlung nützlicher Funktionen zur Manipulation von Strings, aber es gibt keine Funktion, um einen Substring durch einen anderen zu ersetzen. Hier ist eine schnelle str-replace Funktion, falls Sie jemals eine benötigen.

/// Replace `$search` with `$replace` in `$string`
/// @author Kitty Giraudel
/// @param {String} $string - Initial string
/// @param {String} $search - Substring to replace
/// @param {String} $replace ('') - New value
/// @return {String} - Updated string
@function str-replace($string, $search, $replace: '') {
  $index: str-index($string, $search);
  
  @if $index {
    @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
  }
  
  @return $string;
}

Verwendung

.selector {
  $string: 'The answer to life the universe and everything is 42.';
  content: str-replace($string, 'e', 'xoxo');
}

Ergebnis

.selector {
  content: "Thxoxo answxoxor to lifxoxo thxoxo univxoxorsxoxo and xoxovxoxorything is 42.";
}