gpt4 book ai didi

css - 如何在 SASS 中将一个字符串拆分为两个数字列表?

转载 作者:技术小花猫 更新时间:2023-10-29 11:28:39 29 4
gpt4 key购买 nike

我有一个 SASS/SCSS 字符串,其中包含两个列表(以逗号分隔),每个列表包含数字(以空格分隔)。如何将字符串拆分为两个数字列表?

SCSS:

$values: "10px 20px 30px, 20px 30px 40px";

$begin: /* should be */ "10px", "20px", "30px";
$end: /* should be */ "20px", "30px", "40px";

// optionally it can be a map:
$begin: (10px, 20px, 30px);
$end: (20px, 30px, 40px);

Sass Meister 代码: http://sassmeister.com/gist/4d9c1bd741177636ae1b

最佳答案

好吧,您可以使用此函数拆分字符串:

字符串拆分

@function str-split($string, $separator) {
// empty array/list
$split-arr: ();
// first index of separator in string
$index : str-index($string, $separator);
// loop through string
@while $index != null {
// get the substring from the first character to the separator
$item: str-slice($string, 1, $index - 1);
// push item to array
$split-arr: append($split-arr, $item);
// remove item and separator from string
$string: str-slice($string, $index + 1);
// find new index of separator
$index : str-index($string, $separator);
}
// add the remaining string to list (the last item)
$split-arr: append($split-arr, $string);

@return $split-arr;
}


用法

在您的情况下,您可以这样使用它:

$values: "10px 20px 30px, 20px 30px 40px";
$list: ();

$split-values: str-split($values, ", ");
@each $value in $split-values {
$list: append($list, str-split($value, " "));
}



转换为数字

至于将字符串值转换为数字,请查看 Hugo Giraudel 在 SassMeister 上的函数(或阅读他的 blog post )

关于css - 如何在 SASS 中将一个字符串拆分为两个数字列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32376461/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com