2016-11-02 5 views

答えて

3

あなたが探していたものではありませんが、それはあなたが草で得ることができるほど近いと思います。 $nameが含まれている場合

str-index($string, $substring)を使用して、あなたは見つけることができ-outline

@each $name, $char in $font-icons { 
    @if (str-index($name, '-outline')) { 
     //do something 
    } 
} 

EDIT:

@function ends-with($string, $find) { 
    @if (str-index($string, $find) == (str-length($string) - str-length($find) + 1)) { 
    @return true; 
    } @else { 
    @return false; 
    } 
} 

@each $name, $char in $font-icons { 
    @if (ends-with($name, '-outline')) { 
     //do something 
    } 
} 
:文字列を別の文字列で終わる場合
ただ、実際に見つけるために迅速なSASSの機能を書きました

UPDATE#2: $ stringに$が複数含まれている場合、上記の関数はfalseを返します。 で終わるため

@each $animal in puma, sea-slug, egret, salamander { 
    @if (str-index($animal, -slug)) { 
    .#{$animal}-icon { 
     background-image: url('/images/#{$animal}.png'); 
    } 
    } 
} 

、これは次のとおりです:

@function ends-with($string, $find) { 
    @if (str-slice($string, (str-length($string) - str-length($find) + 1)) == $find) { 
    @return true; 
    } @else { 
    @return false; 
    } 
} 
0

のためにこれを試すにはが含まれています:$ stringが本当に見つける$で終わる場合、この関数はtrueを返します

@each $animal in puma, sea-slug, sea-slugs, egret, salamander { 
    @if (str-index($animal, -slug) and (str-index($animal, -slug) + 4) == str-length($animal)) { 
    .#{$animal}-icon { 
     background-image: url('/images/#{$animal}.png'); 
    } 
    } 
} 

または

あなたが http://www.sassmeister.com/であなたのSASSをテストすることができます。1.

- 私たちの@if、ハードコーディングされた「4」は、当社の検索条件(-slug)の長さと一致しない海のナメクジことを

ノート、

関連する問題