Objective c NSPredicate,CoreData中的空白。如何修剪谓词?

Objective c NSPredicate,CoreData中的空白。如何修剪谓词?,objective-c,ios,sqlite,core-data,nspredicate,Objective C,Ios,Sqlite,Core Data,Nspredicate,我有一个CoreData/SQLite应用程序,其中有“父类别”和“类别”。我无法控制数据,一些“父类别”值后面有空格 我可以使用CONTAINS(或者我应该说它与CONTAINS一起工作,但这是我不能使用的)。例如,我有两个条目,男性和男性。如果我使用CONTAINS我将返回这两条记录,您可以看到这是一个怎样的问题 我可以很容易地在我这边进行修剪,但是谓词会将其与数据库进行比较,并且不匹配。所以我的问题是,如果可能的话,如何解释谓词中的空白 我在应用程序中选择了一个类别“MENS”,并将其与数

我有一个CoreData/SQLite应用程序,其中有“父类别”和“类别”。我无法控制数据,一些“父类别”值后面有空格

我可以使用
CONTAINS
(或者我应该说它与
CONTAINS
一起工作,但这是我不能使用的)。例如,我有两个条目,男性和男性。如果我使用
CONTAINS
我将返回这两条记录,您可以看到这是一个怎样的问题

我可以很容易地在我这边进行修剪,但是谓词会将其与数据库进行比较,并且不匹配。所以我的问题是,如果可能的话,如何解释谓词中的空白


我在应用程序中选择了一个类别“MENS”,并将其与数据库中的“MENS”进行比较。

在进行查找之前,我会对数据进行修剪。您可以使用
stringByTrimmingCharactersInSet
轻松完成此操作。通过提前执行,您还可以避免任何性能损失。如果要与
包含的内容
进行基于字符的比较,这可能会很昂贵

那么,假设您的搜索字符串是“MEN”

以下是剔除任何狡猾角色的方法:

NSString *trimmed = [@"MEN  " stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
还有
whitespace和newlinecharacterset
,它们按照tin上的说明执行

或者,你可以很容易地为你想要修剪的东西创建你自己的自定义角色

为此,请查看:


苹果的

我会在进行查找之前对数据进行修剪。您可以使用
stringByTrimmingCharactersInSet
轻松完成此操作。通过提前执行,您还可以避免任何性能损失。如果要与
包含的内容
进行基于字符的比较,这可能会很昂贵

那么,假设您的搜索字符串是“MEN”

以下是剔除任何狡猾角色的方法:

NSString *trimmed = [@"MEN  " stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
还有
whitespace和newlinecharacterset
,它们按照tin上的说明执行

或者,你可以很容易地为你想要修剪的东西创建你自己的自定义角色

为此,请查看:


苹果的

更好的问题:为什么你商店里的数据没有被清理?这样就不会出现此问题。您可以使用CONTAINS并假设它可能返回多个记录,然后循环检查“isEqualToString”的获取检查结果?更好的问题:为什么存储中的数据没有被清除?您可以使用CONTAINS并假设它可能返回多个记录,然后循环检查“isEqualToString”的获取检查结果?