这是我很快想出来的。它适用于iPhone上的regexKitLite
:
#define kUserRegex @"((?:@){1}[0-9a-zA-Z_]{1,15})";
Twitter仅允许使用字母/数字,下划线_
和最多15个字符(不含@
)。我的正则表达式看起来很好但报告了电子邮件地址的误报。
#define kHashtagRegex @"((?:#){1}[0-9a-zA-Z_àáâãäåçèéêëìíîïðòóôõöùúûüýÿ]{1,140})";
kHashtagRegex
使用强调词,但对于UTF-8词来说还不够。
标签的'技术规范'是什么?
是否有关于使用什么来解析这些内容的参考?或者你有关于如何增强这个正则表达式的建议吗?
答案 0 :(得分:4)
我不确定这是否完整,这就是我要做的事情:
对于用户名,请在@
之前添加对空格/字符串开头的检查以消除电子邮件(?:^|\s)
:
#define kUserRegex @"((?:^|\s)(?:@){1}[0-9a-zA-Z_]{1,15})";
对于哈希标签,我只会说\ w或\ d
#define kHashtagRegex @"((?:#){1}[\w\d]{1,140})";
答案 1 :(得分:0)
REGEX_HASHTAG = '/(^|[^0-9A-Z&\/\?]+)([##]+)([0-9A-Z_]*[A-Z_]+[a-z0-9_üÀ-ÖØ-öø-ÿ]*)/iu';`