gpt4 book ai didi

ios - 使用 NSRegularExpression 查找并检测 "@"和 "#"

转载 作者:行者123 更新时间:2023-11-29 02:58:01 24 4
gpt4 key购买 nike

我正在尝试使用 NSRegularExpression 在我的文本中查找“@”和“#”符号;

NSString *testString = @"This text contains @ and # signs";
NSRange stringRange = NSMakeRange(0, [testString length]);
NSRegularExpression *regexTest = [[NSRegularExpression alloc] initWithPattern:@"\\b(@|#)\\b"];
NSRange nameRange = [regexTest rangeOfFirstMatchInString:testString options:0 range:stringRange];

当我使用 NSLog nameRange.location 时,它总是返回 0。找到带有 NSRegularExpression 符号的正确形式是什么?

最佳答案

这就是我使用 NSPredicate 实现的方法。这会告诉您当前正在编辑/输入的@mention 单词。希望这会有所帮助。

- (void)textViewDidChange:(UITextView *)textView
{
_words = [self.textView.text componentsSeparatedByString:@" "];
NSPredicate* predicate = [NSPredicate predicateWithFormat:@"SELF BEGINSWITH[cd] '@'"];
NSArray* names = [_words filteredArrayUsingPredicate:predicate];
if (_oldArray)
{
NSMutableSet* set1 = [NSMutableSet setWithArray:names];
NSMutableSet* set2 = [NSMutableSet setWithArray:_oldArray];
[set1 minusSet:set2];
if (set1.count > 0)
NSLog(@"Results %@", set1);
}
_oldArray = [[NSArray alloc] initWithArray:names];
}

关于ios - 使用 NSRegularExpression 查找并检测 "@"和 "#",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23651729/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com