Memoize |
BasicWerk
EC Support
Technique
Facebook
|
20140630191031_factor_split-by-one_indexOf |
|
factor_split-by-one_indexOf
! Copyright (C) 2014 Shin Nakamura. ! See http://factorcode.org/license.txt for BSD license. USING: kernel sequences fry arrays assocs sets locals math math.ranges ; IN: my-seq ! some other words ... ! 文字列を1文字ずつに切り分ける ! empty? だったらそのまま返す : split-by-one ( str -- seq ) [let :> str str empty? [ str ] [ str length 1 - [0,b] [ dup 1 + str subseq ] map ] if ] ; ! Like JavaScript : indexOf ( elt str -- index ) split-by-one index ;
IN: scratchpad USE: my-seq
IN: scratchpad "" split-by-one .
""
IN: scratchpad "a" split-by-one .
{ "a" }
IN: scratchpad "ssssss" split-by-one .
{ "s" "s" "s" "s" "s" "s" }
IN: scratchpad auto-use "y" "xyz" split-by-one index .
1
IN: scratchpad auto-use "y" "" split-by-one index .
f
IN: scratchpad auto-use "y" "xyz" indexOf .
1
http://docs.factorcode.org/content/word-subseq,sequences.html http://docs.factorcode.org/content/word-index,sequences.html http://hyperpolyglot.org/stack
|
| © Shin Nakamura/BasicWerk 2014 |