การแทรกค่าลงในสตริง

Clojure:
การแทรกค่าลงในสตริง

วิธีทำ:

;; พื้นฐานด้วย `str` และ `format`
(def name "World")
(str "Hello, " name "!")  ; => "Hello, World!"

;; การใช้ `format`, คล้ายกับการจัดรูปแบบแบบ printf
(format "Goodbye, %s!" name)  ; => "Goodbye, World!"

;; Clojure ไม่มีการอินเตอร์โพเลชั่นสตริงเข้ามาในตัวอย่างภาษาอื่น,
;; แต่เราสามารถใช้ `str` และ `format` อย่างครีเอทีฟได้.

การดำดิ่งลงไป:

Clojure เป็นภาษาที่เรียบง่าย: ไม่มีการอินเตอร์โพเลชั่นสตริงเข้ามาในตัว. อย่างไรก็ตาม, str และ format เป็นตัวเลือกในการสร้างสตริงไดนามิก. ที่มาของมัน? จริยธรรมของความเรียบง่ายของ Clojure มันไว้ใจว่าเราสามารถจัดการการสร้างสตริงด้วยตัวเอง.

สำหรับทางเลือกอื่น, เข้าสู่โลกของการทำ templating: clostache (การใช้ Clojure กับ Mustache) หรือ hiccup สำหรับบริบท HTML. พวกเขามาสะดวกเมื่อ str และ format ดูเรียบง่ายเกินไป.

ภายใต้ผ้าม่าน, format มอบหมายงานให้กับ String.format ของ Java, ข้อเท็จจริงนี้สะท้อนถึงความสามารถในการทำงานร่วมกันกับ Java ของ Clojure. ดังนั้น, แม้คุณจะไม่ได้รับความหวานนั้น, คุณมีพลังของ Java เมื่อคุณต้องการ.

ดูเพิ่มเติม: