Next: , Previous: Predicates for Strings, Up: Strings and Characters   [Contents][Index]


4.3 ʸ»úÎó¤ÎºîÀ®

°Ê²¼¤Î´Ø¿ô¤Ï¡¢¿·¤¿¤Ëʸ»úÎó¤òºîÀ®¤·¤¿¤ê¡¢ ʸ»úÎó¤òÏ¢·ë¤·¤¿¤êʬ²ò¤·¤ÆÊ¸»úÎó¤òºîÀ®¤·¤Þ¤¹¡£

Function: make-string count character

¤³¤Î´Ø¿ô¤Ï¡¢Ê¸»úcharacter¤òcount²ó·«¤êÊÖ¤·¤ÆºîÀ®¤·¤¿Ê¸»úÎó¤òÊÖ¤¹¡£ count¤¬Éé¤Ç¤¢¤ë¤È¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£

(make-string 5 ?x)
     ⇒ "xxxxx"
(make-string 0 ?x)
     ⇒ ""

¤³¤Î´Ø¿ô¤ËÂÐÈæ¤¹¤ë¤â¤Î¤Ë¡¢ char-to-string¡Êsee String Conversion¡Ë¡¢ make-vector¡Êsee Vectors¡Ë¡¢ make-list¡Êsee Building Lists¡Ë¤Ê¤É¤¬¤¢¤ë¡£

Function: string &rest characters

¤³¤ì¤Ï¡¢Ê£¿ô¸Ä¤Îʸ»ú·²characters¤¬Æþ¤Ã¤¿Ê¸»úÎó¤òÊÖ¤¹¡£

(string ?a ?b ?c)
     ⇒ "abc"
Function: substring string start &optional end

¤³¤Î´Ø¿ô¤Ï¡¢string¤Îstart¤«¤é end¡Ê¤ÎľÁ°¡Ë¤Þ¤Ç¤ÎÈϰϤˤ¢¤ëʸ»ú¤«¤éÀ®¤ë¿·¤¿¤Êʸ»úÎó¤òÊÖ¤¹¡£ ÀèÆ¬¤Îʸ»ú¤ò0¤Çź»úÉÕ¤±¤¹¤ë¡£

(substring "abcdefg" 0 3)
     ⇒ "abc"

¤³¤³¤Ç¡¢‘a’¤Îź»ú¤Ï0¡¢‘b’¤Îź»ú¤Ï1¡¢‘c’¤Îź»ú¤Ï2¤Ç¤¢¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢Ê¸»úÎó"abcdefg"¤«¤é3ʸ»ú‘abc’¤ò¥³¥Ô¡¼¤¹¤ë¡£ ź»ú3¤Ï¥³¥Ô¡¼¤¹¤ëÉôʬʸ»úÎó¤Î¶­³¦¤Îʸ»ú°ÌÃÖ¤òɽ¤¹¡£ ź»ú¤¬3¤Ç¤¢¤ëʸ»ú¤Ï¡¢¼ÂºÝ¤Ë¤Ïʸ»úÎóÆâ¤Î4ÈÖÌܤÎʸ»ú¤Ç¤¢¤ë¡£

Éé¤Î¿ô¤Ïʸ»úÎó¤ÎËöÈø¤«¤é¿ô¤¨¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢-1¤Ïʸ»úÎó¤ÎºÇ¸å¤Îʸ»ú¤Îź»ú¤Ç¤¢¤ë¡£ ¤¿¤È¤¨¤Ð¡¢

(substring "abcdefg" -3 -1)
     ⇒ "ef"

¤³¤ÎÎã¤Ç¤Ï¡¢‘e’¤Îź»ú¤Ï-3¡¢‘f’¤Îź»ú¤Ï-2¡¢ ‘g’¤Îź»ú¤Ï-1¤Ç¤¢¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢‘e’¤È‘f’¤ò´Þ¤à¤¬‘g’¤Ï´Þ¤Þ¤Ê¤¤¡£

ź»ú¤Ënil¤ò»È¤¦¤È¡¢Ê¸»úÎó¤ÎŤµ¤ò°ÕÌ£¤¹¤ë¡£ ¤·¤¿¤¬¤Ã¤Æ¡¢¤Ä¤®¤Î¤è¤¦¤Ë¤Ê¤ë¡£

(substring "abcdefg" -3 nil)
     ⇒ "efg"

°ú¿ôend¤ò¾Êά¤¹¤ë¤³¤È¤Ï¡¢nil¤ò»ØÄꤹ¤ë¤³¤È¤ÈÅù²Á¤Ç¤¢¤ë¡£ ¤½¤Î¤¿¤á¡¢(substring string 0)¤Ï¡¢ stringÁ´ÂΤò¥³¥Ô¡¼¤·¤¿¤â¤Î¤òÊÖ¤¹¡£

(substring "abcdefg" 0)
     ⇒ "abcdefg"

¤·¤«¤·¡¢¤³¤Î¤è¤¦¤ÊÌÜŪ¤Ë¤Ïcopy-sequence¤ò´«¤á¤ë ¡Êsee Sequence Functions¡Ë¡£

string¤«¤é¥³¥Ô¡¼¤·¤¿Ê¸»ú¤Ë¥Æ¥­¥¹¥È°À­¤¬¤¢¤ì¤Ð¡¢ ¿·¤¿¤Êʸ»úÎó¤Ë¤â¤½¤Î¥Æ¥­¥¹¥È°À­¤ò¥³¥Ô¡¼¤¹¤ë¡£ see Text Properties¡£

substring¤ÏÂè1°ú¿ô¤È¤·¤Æ¥Ù¥¯¥È¥ë¤â¼õ¤±ÉÕ¤±¤ë¡£ ¤¿¤È¤¨¤Ð¡¢¤Ä¤®¤Î¤È¤ª¤ê¡£

(substring [a b (c) "d"] 1 3)
     ⇒ [b (c)]

start¤äend¤¬À°¿ô¤Ç¤ânil¤Ç¤â¤Ê¤¤¤È¡¢ ¥¨¥é¡¼wrong-type-argument¤òÄÌÃΤ¹¤ë¡£ start¤¬end¤è¤ê¤¦¤·¤í¤Îʸ»ú¤ò»Ø¤·¤Æ¤¤¤¿¤ê¡¢ ¤¤¤º¤ì¤«¤ÎÀ°¿ô¤¬string¤ÎÈϰϳ°¤Ç¤¢¤ë¤È ¥¨¥é¡¼args-out-of-range¤òÄÌÃΤ¹¤ë¡£

¤³¤Î´Ø¿ô¤ÈÂоÈŪ¤Ê¤Î¤¬buffer-substring ¡Êsee Buffer Contents¡Ë¤Ç¤¢¤ê¡¢ ¥«¥ì¥ó¥È¥Ð¥Ã¥Õ¥¡Æâ¤Î¥Æ¥­¥¹¥È¤Î°ìÉô¤ò¼ý¤á¤¿Ê¸»úÎó¤òÊÖ¤¹¡£ ʸ»úÎó¤ÎÀèÆ¬¤Ï0¤Çź»úÉÕ¤±¤¹¤ë¤¬¡¢¥Ð¥Ã¥Õ¥¡¤ÎÀèÆ¬¤Ï1¤Çź»úÉÕ¤±¤¹¤ë¡£

Function: concat &rest sequences

¤³¤Î´Ø¿ô¤Ï¡¢ÅϤ·¤¿°ú¿ô¤Îʸ»ú¤«¤éÀ®¤ë ¡Ê¥Æ¥­¥¹¥È°À­¤¬¤¢¤ì¤Ð¤½¤ì¤â´Þ¤á¤Æ¡Ë¿·¤¿¤Êʸ»úÎó¤òÊÖ¤¹¡£ °ú¿ô¤Ï¡¢Ê¸»úÎ󡢿ô¤Î¥ê¥¹¥È¡¢¿ô¤Î¥Ù¥¯¥È¥ë¤Ç¤¢¤ë¡£ °ú¿ô¼«¿È¤ÏÊѹ¹¤·¤Ê¤¤¡£ concat¤Ë°ú¿ô¤ò»ØÄꤷ¤Ê¤¤¤È¶õʸ»úÎó¤òÊÖ¤¹¡£

(concat "abc" "-def")
     ⇒ "abc-def"
(concat "abc" (list 120 121) [122])
     ⇒ "abcxyz"
;; nil¤Ï¶õ¥·¡¼¥±¥ó¥¹
(concat "abc" nil "-def")
     ⇒ "abc-def"
(concat "The " "quick brown " "fox.")
     ⇒ "The quick brown fox."
(concat)
     ⇒ ""

´Ø¿ôconcat¤Ï¡¢ ´û¸¤Îʸ»úÎó¤Èeq¤Ç¤Ï¤Ê¤¤¿·¤¿¤Êʸ»úÎó¤ò¤Ä¤Í¤Ëºî¤ê½Ð¤¹¡£

°ú¿ô¤¬¡ÊÀ°¿ô¤Î¥·¡¼¥±¥ó¥¹¤Ç¤Ï¤Ê¤¯¡ËÀ°¿ô¤Ç¤¢¤ë¤È¡¢ ¤½¤ÎÀ°¿ô¤Îɽ¼¨É½¸½¤ò¹½À®¤¹¤ëʸ»úÎó¤ËÊÑ´¹¤¹¤ë¡£ ¤³¤Îµ¡Ç½¤ò»È¤ï¤Ê¤¤¤Ç¤Û¤·¤¤¡£ ºï½ü¤¹¤ëͽÄê¤Ç¤¢¤ë¡£ ÆÉ¼Ô¤¬¤³¤Îµ¡Ç½¤ò»È¤Ã¤Æ¤¤¤¿¤é¡¢º£¤¹¤°¥×¥í¥°¥é¥à¤òľ¤¹¤³¤È¡ª À°¿ô¤ò¤³¤Î¤è¤¦¤Ê10¿Ê¿ô¤ËÊÑ´¹¤¹¤ëÀµ¤·¤¤ÊýË¡¤Ï¡¢ format¡Êsee Formatting Strings¡Ë¤ä number-to-string¡Êsee String Conversion¡Ë¤ò»È¤¦¤³¤È¤Ç¤¢¤ë¡£

(concat 137)
     ⇒ "137"
(concat 54 321)
     ⇒ "54321"

¾¤ÎÏ¢·ë´Ø¿ô¤Ë¤Ä¤¤¤Æ¤Ï¡¢ Mapping Functions¤Îmapconcat¡¢ Vectors¤Îvconcat¡¢ Building Lists¤Îappend¤ò»²¾È¡£

Function: split-string string separators

string¤òÀµµ¬É½¸½separators¤Î°ìÃײսê¤Ç¶èÀÚ¤Ã¤Æ Éôʬʸ»úÎó¤Ëʬ²ò¤¹¤ë¡£ separators¤Ë°ìÃפ¹¤ë¤½¤ì¤¾¤ì¤ÎÉôʬ¤¬Ê¬³ä²Õ½ê¤òÄêµÁ¤¹¤ë¡£ ʬ³ä²Õ½ê¤Î¤¢¤¤¤À¤Ë¤¢¤ëÉôʬʸ»úÎó¤ò¥ê¥¹¥È¤Ë¤Þ¤È¤á¡¢¤³¤ì¤òÃͤȤ¹¤ë¡£ separators¤¬nil¤Ç¤¢¤ë¡Ê¤Ä¤Þ¤ê¡¢¾Êά¤¹¤ë¡Ë¤È¡¢ ¥Ç¥Õ¥©¥ë¥È¤Ï"[ \f\t\n\r\v]+"¤Ç¤¢¤ë¡£

¤¿¤È¤¨¤Ð¡¢¤Ä¤®¤Î¤è¤¦¤Ë¤Ê¤ë¡£

(split-string "Soup is good food" "o")
⇒ ("S" "up is g" "" "d f" "" "d")
(split-string "Soup is good food" "o+")
⇒ ("S" "up is g" "d f" "d")

ʸ»úÎó¤ÎÀèÆ¬¤äËöÈø¤Ç°ìÃפ·¤¿¾ì¹ç¤Ë¤Ï¡¢ ¥ê¥¹¥È¤ÎÀèÆ¬¤äËöÈø¤Ë¶õʸ»úÎó¤Ï¸½¤ì¤Ê¤¤¡£

(split-string "out to moo" "o+")
⇒ ("ut t" " m")

¶õ¤Î°ìÃײսê¤Ï¡¢¤½¤ì¤é¤¬Ï¢Â³¤·¤Æ¤¤¤Ê¤¤¸Â¤êʬ³äÅÀ¤Ë¤Ê¤ë¡£

(split-string "Soup is good food" "o*")
⇒("S" "u" "p" " " "i" "s" " " "g" "d" " " "f" "d")
(split-string "Nice doggy!" "")
⇒("N" "i" "c" "e" " " "d" "o" "g" "g" "y" "!")

Next: , Previous: Predicates for Strings, Up: Strings and Characters   [Contents][Index]