12

たとえば、私は持ってい(list "a" "1" "b" "2" "c" "3")ます。

ここで、このリストを 1 つにまとめたいと思います"a1b2c3"

それ、どうやったら出来るの?

ありがとうございました。

4

3 に答える 3

12

(apply string-append (list "a" "1" "b" "2" "c" "3"))または(string-append* "" (list "a" "1" "b" "2" "c" "3"))動作するはずです。参照: http://docs.racket-lang.org/reference/strings.html

これを行う手順が必要な場合は、次のように記述できます(define (strings->string sts) (apply string-append sts))

于 2013-06-02T07:35:28.130 に答える
9

車輪を再発明しないでください!Racket には、これ専用の 1 つのプロシージャがあり、その ' と呼ばれstring-joinます。

(string-join '("a" "1" "b" "2" "c" "3") "")
=> "a1b2c3"

ドキュメントの引用:

(string-join strs                
             [sep                
              #:before-first before-first                
              #:before-last before-last              
              #:after-last after-last]) → string?

strs : (listof string?)
sep : string? = " "
before-first : string? = ""
before-last : string? = sep
after-last : string? = ""

の文字列を追加し、strs の文字列の各ペアの間strsに挿入します。、、およびは、 の入力に類似しています。これらは、最後の 2 つの文字列間の代替区切り文字、プレフィックス文字列、およびサフィックス文字列をそれぞれ指定します。sepbefore-lastbefore-firstafter-lastadd-between

于 2013-06-02T13:03:10.760 に答える