Previous: Bugs, Up: Preliminaries [Contents][Index]
¤³¤Î¥Þ¥Ë¥å¥¢¥ë¤Ë¤Ïm4
¤ÎÆþÎϤȽÐÎϤÎÎ㤬¤¿¤¯¤µ¤ó´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢
ÆþÎÏ¡¢½ÐÎϤª¤è¤Óm4
¤«¤é¤Î¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò¶èÊ̤¹¤ë¤¿¤á¤Î
´Êñ¤ÊɽµË¡¤¬ÍѤ¤¤é¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤é¤ÎÎã¤ÏÄ̾ï¤Îʸ¾Ï¤È¤Ï´Ö³Ö¤ò¤¢¤±¤Æ¡¢
¸ÇÄêÉý¥Õ¥©¥ó¥È¤Ç¼¡¤Î¤è¤¦¤Ëɽ¼¨¤µ¤ì¤Þ¤¹¡£
This is an example of an example!
ÆþÎϤȽÐÎϤò¶èÊ̤¹¤ë¤¿¤á¡¢m4
¤«¤é¤Î½ÐÎϤˤϤ¹¤Ù¤Æ‘⇒’¤¬¡¢
¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤Ë¤Ï¤¹¤Ù¤Æ‘error→’¤¬ÀèÆ¬¤Ë¤Ä¤¤Þ¤¹¡£
¤·¤¿¤¬¤Ã¤Æ¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
Example of input line (ÆþÎϹԤÎÎã) ⇒Output line from m4 (m4¤«¤é¤Î½ÐÎϹԤÎÎã) error→and an error message (¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ÎÎã)
m4
¤ËºÇ½é¤«¤éÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥Þ¥¯¥í¤ÎÀâÌÀ¤ò¤¹¤ë¤È¤¤Ï¡¢
°ú¿ô¤Ëʬ¤«¤ê¤ä¤¹¤¤Ì¾Á°¤ò¤Ä¤±¤¿¥Þ¥¯¥í¸Æ¤Ó½Ð¤·¤Î¥×¥í¥È¥¿¥¤¥×¤ò¼¨¤·¤Þ¤¹¡£
¤³¤ì¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
regexp(string, regexp, opt replacement)
m4
¤Ç¤Ï¥Þ¥¯¥í¤Î°ú¿ô¤Ï¤¹¤Ù¤ÆÊ¸»úÎó¤Ç¤¹¤¬¡¢
¿ô»ú¡¢¥Õ¥¡¥¤¥ë̾¡¢Àµµ¬É½¸½¤È¤·¤Æ¤Ê¤ÉÆÃÊ̤ʲò¼á¤Î¤µ¤ì¤«¤¿¤ò¤¹¤ë¤â¤Î¤â¤¢¤ê¤Þ¤¹¡£
3ÈÖÌܤΰú¿ô¤ÎÁ°¤Ë¤¢¤ë‘opt’¤Ï¡¢¤³¤Î°ú¿ô¤¬¾Êά²Äǽ¤Ç¤¢¤ë¤³¤È¤ò ɽ¤·¤Æ¤¤¤Þ¤¹¡£¾Êά¤·¤¿¤È¤¤Ï¡¢¶õʸ»úÎó¤È¤·¤Æ²ò¼á¤µ¤ì¤Þ¤¹¡£ °ú¿ô¥ê¥¹¥È¤ÎºÇ¸å¤Ë¤¢¤ë¾Êάµ¹æ(‘...’)¤Ï¡¢¤½¤Î¸å¤Ë¤¤¤¯¤Ä¤Ç¤â°ú¿ô¤ò ³¤±¤Æ¤è¤¤¤³¤È¤ò¼¨¤·¤Æ¤Þ¤¹¡£