diff options
Diffstat (limited to 'src/styles/abstracts/functions/_str-replace.scss')
| -rw-r--r-- | src/styles/abstracts/functions/_str-replace.scss | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/styles/abstracts/functions/_str-replace.scss b/src/styles/abstracts/functions/_str-replace.scss new file mode 100644 index 0000000..98cc4b0 --- /dev/null +++ b/src/styles/abstracts/functions/_str-replace.scss @@ -0,0 +1,22 @@ +@use "sass:string"; + +/// Replace `$search` with `$replace` in `$string` +/// @author Hugo 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: string.index($string, $search); + + @if $index { + @return string.slice($string, 1, $index - 1) + $replace + + str-replace( + string.slice($string, $index + string.length($search)), + $search, + $replace + ); + } + + @return $string; +} |
