SU-SWS/decanter

View on GitHub
core/src/scss/utilities/functions/string/_str-replace.scss

Summary

Maintainability
Test Coverage

///
/// Replaces a substring with another string.
/// Replaces $search with $replace in $string
///
/// @name str-replace
///
/// @param {String} $string - Initial string
/// @param {String} $search - Substring to replace
/// @param {String} $replace ('') - New value
///
/// @group mixin
@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;
}