在文本字段中的特定字符串之前获取文本字段中的字符串
Posted
技术标签:
【中文标题】在文本字段中的特定字符串之前获取文本字段中的字符串【英文标题】:Getting a string in textfield before a specific string in the textfield 【发布时间】:2015-07-14 11:56:39 【问题描述】:所以我的文本字段有以下文本。 @"A big Tomato is red."
我想得到 "is" 之前的单词。
当我输入时
NSString *someString = [[textfield componentsSeparatedByString:@"is"]objectAtIndex:0];
我总是得到"A big Tomato"
而不仅仅是"Tomato"
。在应用程序中,人们会在"is"
之前输入内容,所以我需要始终在"is"
之前获取字符串。我会很感激我能得到的任何帮助。 *警告,
这是一个非常困难的问题。
【问题讨论】:
你为什么不把结果“A big Tomato”按空格分开,最后一个条目是“Tomato”? 【参考方案1】:试试这个,
NSString *value = @"A big Tomato is red.";
NSArray *array = [value componentsSeparatedByString:@" "];
if ([array containsObject:@"is"])
NSInteger index = [array indexOfObject:@"is"];
if (index != 0)
NSString *word = [array objectAtIndex:index - 1];
NSLog(@"%@", word);
【讨论】:
【参考方案2】:试试这个
NSString *string = @"A big Tomato is red.";
if ([string rangeOfString:@"is"].location == NSNotFound)
NSLog(@"string does not contain is");
else
NSLog(@"string contains is!");
【讨论】:
【参考方案3】:试试这个
NSString *str = @"A big tomato is red";
NSArray *arr = [str componentsSeparatedByString:@" "];
int index = [arr indexOfObject:@"is"];
if(index > 1)
NSString *str_tomato = arr[index-1];
else
//"is" is the first word of sentence
根据yvesleborg的评论
【讨论】:
用“是一个大番茄”来测试这个以上是关于在文本字段中的特定字符串之前获取文本字段中的字符串的主要内容,如果未能解决你的问题,请参考以下文章