Rechercher une page de manuel
rpmatch
Langue: ja
Version: 2006-05-17 (openSuse - 09/10/07)
Section: 3 (Bibliothèques de fonctions)
̾Á°
rpmatch - ¼ÁÌ䤨¤Î±þÅú¤¬¹ÎÄ꤫ÈÝÄ꤫¤òȽÄꤹ¤ë½ñ¼°
#define _SVID_SOURCE #include <stdlib.h> int rpmatch(const char *response);
ÀâÌÀ
rpmatch() ¤Ï yes/no ¤Î¼ÁÌä¤ËÂФ¹¤ë¥æ¡¼¥¶¤«¤é¤Î±þÅú¤ò½èÍý¤¹¤ë¡£ ¹ñºÝ²½ (I18N) ¤ËÂбþ¤·¤Æ¤¤¤ë¡£response ¤Ë¤Ï¥æ¡¼¥¶¤«¤é¤Î±þÅú¤ò³ÊǼ¤·¤¿ NULL ½ªÃ¼Ê¸»úÎ󤬯þ¤Ã¤Æ¤¤¤ëɬÍפ¬¤¢¤ë¡£ ¤¿¤¤¤Æ¤¤¤Ï¡¢ fgets(3) ¤ä getline(3) ¤Ç¼è¤ê¹þ¤ó¤À¤â¤Î¤Ç¤¢¤í¤¦¡£
¥×¥í¥°¥é¥à¤¬ setlocale(3) ¤ò¸Æ¤Ó½Ð¤·¤Æ´Ä¶ÊÑ¿ô¤ÎÊѹ¹¤ò͸ú¤Ë¤·¤¿¾ì¹ç¡¢ ´Ä¶ÊÑ¿ô LANG, LC_MESSAGES, LC_ALL ¤¬ ¥æ¡¼¥¶¤Î¸À¸ìÀßÄê¤È¤·¤Æ¹Í褵¤ì¤ë¡£
¥í¥±¡¼¥ë¤Ë´Ø¤ï¤é¤º¡¢^[Yy] ¤Ë¥Þ¥Ã¥Á¤¹¤ë±þÅú¤Ï¾ï¤Ë¹ÎÄê¤À¤È²ò¼á¤µ¤ì¡¢ ^[Nn] ¤Ë¥Þ¥Ã¥Á¤¹¤ë±þÅú¤Ï¾ï¤ËÈÝÄê¤À¤È²ò¼á¤µ¤ì¤ë¡£
ÊÖ¤êÃÍ
response ¤ò¸¡ºº¤·¤¿¸å¡¢ rpmatch() ¤ÏÈÝÄêŪ¤Ê±þÅú ("no") ¤Èǧ¼±¤·¤¿¾ì¹ç¤Ï 0 ¤òÊÖ¤·¡¢ ¹ÎÄêŪ¤Ê±þÅú ("yes") ¤Èǧ¼±¤·¤¿¾ì¹ç¤Ï 1 ¤òÊÖ¤¹¡£ response ¤ÎÃͤò²ò¼á¤Ç¤¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï -1 ¤òÊÖ¤¹¡£¥¨¥é¡¼
ÊÖ¤êÃÍ -1 ¤¬Ê֤俾ì¹ç¡¢ÆþÎϤ¬ÉÔÀµ¤Ç¤¢¤Ã¤¿¤«¡¢Â¾¤Î²¿¤é¤«¤Î¥¨¥é¡¼¤¬ ¤¢¤Ã¤¿¤³¤È¤ò°ÕÌ£¤¹¤ë¡£ÊÖ¤êÃͤ¬ 0 °Ê³°¤«¤É¤¦¤«¤ò³Îǧ¤¹¤ë¤À¤±¤Ç¤Ï ½½Ê¬¤Ç¤Ï¤Ê¤¤¡£rpmatch() ¤Ï¡¢ regcomp(3) ¤ä regexec(3) ¤¬¼ºÇÔ¤¹¤ëÍýͳ¤Î¤É¤ì¤«¤Ç¼ºÇÔ¤¹¤ë¤³¤È¤¬¤¢¤ë¡£ ¥¨¥é¡¼¤Î¸¶°ø¤ò errno ¤ä¾¤Î²¿¤«¤ÇÃΤ뤳¤È¤Ï¤Ç¤¤Ê¤¤¤¬¡¢ errno ¤ÏÀµµ¬É½¸½¥¨¥ó¥¸¥ó¤Î¼ºÇԤθ¶°ø¤ò¼¨¤·¤Æ¤¤¤ë (⤷¡¢¤³¤Î¥±¡¼¥¹¤È response ¤ÎÃͤòǧ¼±¤Ç¤¤º¤Ë¼ºÇÔ¤·¤¿¾ì¹ç¤ò¶èÊ̤¹¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤)¡£
½àµò
rpmatch() ¤Ï¤É¤Îɸ½à¤Ç¤âɬ¿Ü¤È¤Ê¤Ã¤Æ¤¤¤Ê¤¤¤¬¡¢ Linux °Ê³°¤Ë¤âÍøÍѤǤ¤ë¥·¥¹¥Æ¥à¤â¤¤¤¯¤Ä¤«¤Ï¸ºß¤¹¤ë¡£¥Ð¥°
rpmatch() ¤Î¼ÂÁõ¤Ï response ¤ÎºÇ½é¤Î 1 ʸ»ú¤À¤±¤ò¸«¤Æ¤¤¤ë¤è¤¦¤Ç¤¢¤ë¡£¤½¤Î·ë²Ì¡¢ "nyes" ¤Ï 0 ¤òÊÖ¤·¡¢ "ynever; not in a million years" ¤Ï 1 ¤òÊÖ¤¹¤³¤È¤Ë¤Ê¤ë¡£ ÆþÎÏʸ»úÎó¤ò¤â¤Ã¤È¸·Ì©¤Ë²ò¼á¤·¤¿Êý¤¬¤è¤¤¤À¤í¤¦¡£ Î㤨¤Ð¡¢ (regex(7) ¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë³ÈÄ¥Àµµ¬É½¸½¤ò»È¤Ã¤Æ) ^([yY]|yes|YES)$ ¤ä ^([nN]|no|NO)$ ¤Ç²ò¼á¤¹¤ë¤Ê¤É¡£Îã
°Ê²¼¤Î¥×¥í¥°¥é¥à¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¤¿ô¤Ç »ØÄꤵ¤ì¤¿Ê¸»úÎó¤ò rpmatch() ¤ËÅϤ·¤¿¾ì¹ç¤Î·ë²Ì¤òɽ¼¨¤¹¤ë¡£#define _SVID_SOURCE #include <locale.h> #include <stdlib.h> #include <string.h> #include <stdio.h> int main(int argc, char *argv[]) { if (argc != 2 || strcmp(argv[1], "--help") == 0) { fprintf(stderr, "%s response\n", argv[0]); exit(EXIT_FAILURE); } setlocale(LC_ALL, ""); printf("rpmatch() returns: %d\n", rpmatch(argv[1])); exit(EXIT_SUCCESS); }
´ØÏ¢¹àÌÜ
regcomp(3), fgets(3), getline(3), nl_langinfo(3), setlocale(3), feature_test_macros(7)Contenus ©2006-2023 Benjamin Poulain
Design ©2006-2023 Maxime Vantorre