我有使用NSPredicate
這需要正則表達式匹配路徑查詢:如何在NSPredicate中重現MATCHES以查詢Realm?
let predicate = NSPredicate(format: "path MATCHES '/test/([^/]*[^/])$'")
相匹配的文件夾測試裏面的一切,但不包括文件夾的所有子文件夾中測試,像這樣:
- /test/abc - >是
- /test/abc/def - >否
的問題是,我不能在Realm.io使用NSPredicate
的MATCH
關鍵字。我怎樣才能重現這個查詢,所以它在Realm中工作?
添加例外的完整性:
從這裏境界*** Terminating app due to uncaught exception 'Invalid operator type', reason: 'Operator type 6 not supported for string type'
嗨喬,謝謝你的時間。不過,我可以在https://github.com/realm/realm-cocoa/blob/master/Realm/RLMQueryUtil.mm lines ** 685-706 **中獲得這些信息。我希望你能知道一些解決方法。 – Michal
通過更改模型解決了問題。提議的NSArray過濾是不可接受的 - 在大量子文件夾和文件的情況下,當列出根文件夾的內容時,我實際上在整個結構中循環兩次。密切關注**#1490 ** :-) – Michal
很高興聽到您找到了更好的替代解決方案!感謝您的耐心,因爲我們繼續增加對查詢的支持 – yoshyosh