字符串方法
match(pattern, string[, flags])
返回字符串中任何匹配的模式(正则表达式)。
match('^(height|width)?([<>=]{1,})(.*)', 'height>=1024px')
// => 'height>=1024px' 'height' '>=' '1024px'
match('^foo(?:bar)?', 'foo')
// => 'foo'
match('^foo(?:bar)?', 'foobar')
// => 'foobar'
match('^foo(?:bar)?', 'bar')
// => null
match('ain', 'The rain in SPAIN stays mainly in the plain')
// => 'ain'
match('ain', 'The rain in SPAIN stays mainly in the plain', g)
// => 'ain' 'ain' 'ain'
match('ain', 'The rain in SPAIN stays mainly in the plain', 'gi')
// => 'ain' 'AIN' 'ain' 'ain'
replace(pattern, replacement, val)
在替换为所有' pattern '匹配为' replace '后,返回字符串val。
replace(i, e, 'griin')
// => 'green'
replace(i, e, griin)
// => #008000
join(delim, vals…)
用delim加入给定的vals。
join(' ', 1 2 3)
// => "1 2 3"
join(',', 1 2 3)
// => "1,2,3"
join(', ', foo bar baz)
// => "foo, bar, baz"
join(', ', foo, bar, baz)
// => "foo, bar, baz"
join(', ', 1 2, 3 4, 5 6)
// => "1 2, 3 4, 5 6"
split(delim, val)
' split() '方法通过将字符串分割成子字符串来将字符串或标识分割成字符串列表。
split(_, bar1_bar2_bar3)
// => bar1 bar2 bar3
split(_, 'bar1_bar2_bar3')
// => 'bar1' 'bar2' 'bar3'
substr(val, start, length)
substr()方法返回从指定位置开始的字符串中指定数量的字符。
substr(ident, 1, 2)
// => de
substr('string', 1, 2)
// => 'tr'
val = dredd
substr(substr(val, 1), 0, 3)
// => #f00
slice(val, start[, end])
slice()方法提取字符串/列表的一部分并返回一个新的字符串/列表。
slice('lorem' 'ipsum' 'dolor', 1, -1)
// => 'ipsum'
slice('lorem ipsum', 1, 5)
// => 'orem'
slice(rredd, 1, -1)
// => #f00
slice(1px solid black, 1)
// => solid #000
unquote(str | ident)
取消给定str的引号,并将其作为Literal节点返回。
unquote("sans-serif")
// => sans-serif
unquote(sans-serif)
// => sans-serif
unquote('1px / 2px')
// => 1px / 2px
convert(str)
类似unquote(),但试图将给定的str转换为Stylus节点。
unit = convert('40px')
typeof(unit)
// => 'unit'
color = convert('#fff')
typeof(color)
// => 'rgba'
foo = convert('foo')
typeof(foo)
// => 'ident'
s(fmt, …)
s()函数类似于unquote(),因为它返回一个Literal节点。但是,它接受类似于C的sprintf()的格式字符串。
目前,唯一的说明符是%s。
s('bar()');
// => bar()
s('bar(%s)', 'baz');
// => bar("baz")
s('bar(%s)', baz);
// => bar(baz)
s('bar(%s)', 15px);
// => bar(15px)
s('rgba(%s, %s, %s, 0.5)', 255, 100, 50);
// => rgba(255, 100, 50, 0.5)
s('bar(%Z)', 15px);
// => bar(%Z)
s('bar(%s, %s)', 15px);
// => bar(15px, null)
检查% string操作符查看等效行为。
网友评论