插入字符我有Clojure中的一個字符串,我希望把在第n和(n + 1)個字符之間的字符。例如:可以說字符串是「aple」,我想在「p」和「l」之間插入另一個「p」。Clojure的:習慣的方法在一個字符串
(prn
(some-function "aple" "p" 1 2))
;; prints "apple"
;; ie "aple" -> "ap" "p" "le" and the concatenated back together.
我發現這個頗具挑戰性,所以我想我缺少的一些有用的功能(S)是否有人可以幫我寫的「某些功能」上面說需要一個字符串信息,另一個字符串,一個開始位置和一個結束位置,並將第二個字符串插入到第一個開始位置和結束位置之間?提前致謝!
順便說一句,在速度上的差異相當明顯。一個繞圈快基準告訴我'(STR-插入「APLE」「P」 1)'大約需要180納秒,這是12.5倍小於基於SEQ版本的2.25微秒。 –
注意'subs'包裝Java的'substring'和'str'使用'StringBuilder'。我認爲不可能做得更好。 –