我将KILabel用于我的Swift项目,以便将主题标签转换为链接。我的问题是我所做的正则表达式函数也是捕获点。例如,如果用户写#18.3我想只捕获#18
我尝试了一些东西,以便在某个时刻删除标签,但没有成功。
regex = [[NSRegularExpression alloc] initWithPattern:@"(#+[\\S\\_]+)?" options:0 error:&error];
您对我如何做到这一点有任何想法吗?
答案 0 :(得分:2)
你有的正则表达式匹配1 + @"#[^\\s.]+"
个字符,然后是1个或多个非空白字符。
要在第一个点之前停止匹配,请使用
@"#[^\\s.]+(?:\\.[^\\s.]+)*"
如果里面有点,请使用
#
<强>详情
#
- [^\s.]+
字符.
- 除了空格和(?:\.[^\s.]+)*
\.
- 零次或多次重复
[^\s.]+
- 一个点.
- 除了空格和functions
之外的一个或多个字符。