diff options
Diffstat (limited to 'nick.c')
-rw-r--r-- | nick.c | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -67,6 +67,23 @@ int nick_regex_add(struct nick_t *nick, const char *re_s) { return 1; } +char *nick_get(char *name) { + struct nick_t *nick = nicks; + while(nick) { + struct nick_regex_t *nre = nick->regexes; + while(nre) { + int ovector[6]; + int rc; + rc = pcre_exec(nre->re, nre->re_e, name, strlen(name), 0, 0, ovector, 6); + if(rc > 0) + return nick->name; + nre = nre->next; + } + nick = nick->next; + } + return name; +} + void nick_free() { struct nick_t *nick = nicks; while(nick) { |