使用正则表达式提取文本“111111@qq.comabcdefg@126.comabc123@163.com”中所有的邮箱号。代码
时间: 2023-04-04 15:02:46 浏览: 649
可以使用以下正则表达式提取文本中的所有邮箱号:
\b\w+@\w+\.\w+\b
代码示例:
#include <stdio.h>
#include <regex.h>
int main()
{
char *text = "111111@qq.comabcdefg@126.comabc123@163.com";
regex_t regex;
regmatch_t match;
int ret;
ret = regcomp(®ex, "\\b\\w+@\\w+\\.\\w+\\b", REG_EXTENDED);
if (ret != 0)
{
printf("regcomp error\n");
return 1;
}
while (regexec(®ex, text, 1, &match, 0) == 0)
{
char *match_str = text + match.rm_so;
int match_len = match.rm_eo - match.rm_so;
printf("%.*s\n", match_len, match_str);
text += match.rm_eo;
}
regfree(®ex);
return 0;
}
阅读全文