NSRegularExpression 在字符后随文本颜色变化
NSRegularExpression change following text's color after a character
我正在尝试更改字符的颜色和任何文本,我正在使用 NSRegularExpression
来获取字符,但我不知道如何更改以下字符,例如这是我的文本:
● Title......
some description xxxxxx x x x x x
所以在这种情况下,我需要更改此 ●
字符的颜色和后续字符串
这是代码:
NSRegularExpression *regex2 = [NSRegularExpression regularExpressionWithPattern:@"●"
options:kNilOptions error:nil];
[regex2 enumerateMatchesInString:PureText options:kNilOptions range:range usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSRange subStringRange = [result rangeAtIndex:0];
[stringText addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:subStringRange];
}];
_textView.attributedText = stringText;
此代码仅查找和更改 ● 字符的颜色。
您的正则表达式只查找点符号。 ●.*
之类的东西怎么样?我不确定 NSRegularExpression 如何处理换行符,因此您可能还需要表示它们。
使用正则表达式 ●.*
匹配换行前点之后的所有字符:
NSRegularExpression *regex2 = [NSRegularExpression regularExpressionWithPattern:@"●.*"
options:kNilOptions error:nil];
[regex2 enumerateMatchesInString:PureText options:kNilOptions range:range usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSRange subStringRange = [result rangeAtIndex:0];
[stringText addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:subStringRange];
}];
_textView.attributedText = stringText;
我正在尝试更改字符的颜色和任何文本,我正在使用 NSRegularExpression
来获取字符,但我不知道如何更改以下字符,例如这是我的文本:
● Title......
some description xxxxxx x x x x x
所以在这种情况下,我需要更改此 ●
字符的颜色和后续字符串
这是代码:
NSRegularExpression *regex2 = [NSRegularExpression regularExpressionWithPattern:@"●"
options:kNilOptions error:nil];
[regex2 enumerateMatchesInString:PureText options:kNilOptions range:range usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSRange subStringRange = [result rangeAtIndex:0];
[stringText addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:subStringRange];
}];
_textView.attributedText = stringText;
此代码仅查找和更改 ● 字符的颜色。
您的正则表达式只查找点符号。 ●.*
之类的东西怎么样?我不确定 NSRegularExpression 如何处理换行符,因此您可能还需要表示它们。
使用正则表达式 ●.*
匹配换行前点之后的所有字符:
NSRegularExpression *regex2 = [NSRegularExpression regularExpressionWithPattern:@"●.*"
options:kNilOptions error:nil];
[regex2 enumerateMatchesInString:PureText options:kNilOptions range:range usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSRange subStringRange = [result rangeAtIndex:0];
[stringText addAttribute:NSForegroundColorAttributeName value:[UIColor orangeColor] range:subStringRange];
}];
_textView.attributedText = stringText;