gpt4 book ai didi

ios - 在IOS中使用正则表达式获取word有定义的字符和粗体样式

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

我需要在句子输入中输入一个单词并将它的样式加粗。这是我的代码

NSString *regexString = @"(\\<-\\w+(\\s\\w+)*\\->)\\s";

NSString *aString = @"Notes on iOS7 going to take a <-lot-> of getting used to!";

NSRegularExpression *regex1 = [NSRegularExpression
regularExpressionWithPattern:regexString
options:NSRegularExpressionCaseInsensitive
error:&error];

NSString *match =
[aString substringWithRange:[regex1 rangeOfFirstMatchInString:aString
options:NSMatchingCompleted range:NSMakeRange(0, [aString length])]];

NSLog(@"Matched string: %@", match);

String : iOS7 上的注释需要<-lot->的时间来适应!

NSLog中打印的字符串:匹配的字符串:<-lot->

在这里我只需要得到“很多”这个词

预期打印:匹配的字符串:很多

我还需要像这样更改句子中这个词的类型:iOS7 上的注释将需要很多的习惯!

最佳答案

这是打印该单词的示例代码:

NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"(?<=<-)\\w+(?=->)" options:0 error:&error];
if (regex) {
NSRange rangeOfFirstMatch = [regex rangeOfFirstMatchInString:subject options:0 range:NSMakeRange(0, [subject length])];
if (!NSEqualRanges(rangeOfFirstMatch, NSMakeRange(NSNotFound, 0))) {
NSString *result = [string substringWithRange:rangeOfFirstMatch];
} else {
// Match attempt failed
}
} else {
// Syntax error in the regular expression
}

解释

  • 回顾 (?<=<-)断言前面的是 <- (但不匹配)
  • \w+匹配单词字符
  • 前瞻 (?=->)断言后面是 -> (但不匹配)

引用

关于ios - 在IOS中使用正则表达式获取word有定义的字符和粗体样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24901331/

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