问题标签 [nsexpression]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - 当 NSDecimalNumbers 从 NSExpression Core Data Fetch 存储在 NSDictionary 中时,NSDecimalNumber 算术的问题
我一直在尝试学习如何使用 NSExpressions 从核心数据中获取聚合信息。我的 fetch 工作正常,但我在尝试解析结果数据以进行处理时遇到了麻烦。我确定我一定错过了一些东西,但我无法弄清楚它是什么。我正在获取某些实体的属性总和,并且这部分是正确的。然后我想对结果做一些数学运算,但我没有得到想要的结果。
这是我的示例代码
这是我的控制台日志
现在我不是火箭科学家,但 $100+$300-$25 = $375。我的 currentBalance 总是 100 美元。同样根据我的示例数据,postedCredits 和 postedDebits 是正确的,但似乎没有任何东西被添加到初始起始余额中或从初始余额中减去。我确定我必须在某处输入结果,但我已经尝试在获取结果添加到字典之前以及在加法或减法发生之前尝试过。我什至尝试过 [NSDecimalNumber NSDecimalNumberWithString:] 从字典中提取它们,然后再对它们进行操作。
如果有人能在这里指出我正确的方向,我将不胜感激。提前致谢!!
objective-c - NSExpression 捕获无效参数
我正在使用 NSExpression 来评估数学字符串,并且效果很好。但是,当输入字符串无效时,我想有一种方法来捕获错误,例如“3++2”。有没有办法做到这一点,而不是由于“NSInvalidArgumentException”而终止应用程序。对不起,我对objective-c还很陌生。我现在使用的代码是:
objective-c - 使用 NSExpression 计算小于值?
对于以下代码块:
我收到错误:
由于未捕获的异常'NSInvalidArgumentException',原因:'无法解析格式字符串“5 < 9 == 1”'
objective-c - 具有自定义函数核心数据的 nsexpression
我正在尝试对核心数据实体的日期进行分组和计数。由于时间不同,日期不能分组。所以我试图将自定义函数传递给 nsexpression。但我遇到了一些错误,我不知道正确的方法是什么。
分组和计数代码:
dateShort 是一个 nsdate 类别函数,它将数据时间转换为用户的当前区域:
错误:
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“传递给 SQL 存储的函数类型不受支持”
如何实现这一目标:将日期时间转换为当前区域和组并依靠核心数据实体上的 (yy-mm-dd)?
ios - 核心数据迁移期间的值表达式导致异常结果
我有一个 iOS 应用程序,我正在尝试将其核心数据模型迁移到新版本。
在 Core Data 模型的 v2 中有一个新字段(photoFilename),可以使用 v1 字段(dateInSeconds)并附加“.jpg”为现有条目生成它的值。
例如
我已经创建了一个核心数据映射模型(部分如下所示),并且数据库似乎要迁移。不幸的是,创建的 photoFilename 在“.jpg”前面没有给出正确的数字。例如,它可能返回 '275263312.jpg' 而不是 '401760341.jpg'
现在诚然,我以前从未使用过这样的映射,而且这里的 Apple 文档似乎非常有限。
在其他地方进行研究,似乎“值表达式”是 NSExpression 的一种,可以复制用于测试目的。
但是,这与“.jpg”前面的错误数字类似。
有人可以指出为什么获得的评估结果不是我的预期结果吗?
ios - iOS 核心数据总和数据按日期、月份年份
在 iOS 中,我试图按日、月和年对核心数据字段求和。我发现了一些使用的示例NSExpression
,但不是这个特定的请求。
这是我的数据对象:
希望按日、月和年对数据进行分组,然后对金额求和。
谢谢。
ios - NSRegularExpression 在 url IOS
我有从 url 获取标题的方法。
它有效,但在一个网站上我没有匹配结果。
你知道问题出在哪里吗?
网页上的标题是测试 - sds
cocoa - 解析和更改 NSPredicate
我必须将数据从以前的应用程序版本迁移到新版本。这也会影响用户保存的一些谓词(NSPredicate
实例),这意味着我必须以编程方式更改它们。
目前我尝试解析我得到的字符串[NSPredicate predicateFormat]
并手动更改一些表达式。例如oldKeyPath == "something"
对newKeyPath == "something"
. 但这感觉就像一个黑客,我很好奇是否有更好的方法?
我阅读了 Apple 关于使用 NSPredicate 和 NSExpression 进行编程的文档。有很多方法可以NSPredicate
从NSExpressions
. 我希望找到NSExpression
从NSPredicate
. 我错过了什么吗?
谢谢你的任何提示。
解决方案
感谢 Martin RI 能够创建一个类别NSPredicate
,允许我对表达式进行修改。
这是有关如何使用它的示例代码
ios - stringFromDate 不将 NSDate 转换为字符串
我有一些简单的代码应该转换我从 CoreData 检索的 NSDate。出于某种原因,当相同的代码在其他视图中工作时,它在此类中不起作用。我究竟做错了什么?下面是有问题的代码和我的日志的屏幕截图......
objective-c - 使用 NSExpression 对 CoreData 进行列计算字段评估。变量替换,公式存储
这是一个设计问题。假设我有一个包含 2 个实体的 CoreData 模型 - Item和Formula。
项目具有 3 个数字属性“X”、“Y”和“Z”,以及与“公式”实体的一对一关系。
公式有一个字符串属性,其中包含诸如“(X*Y*Z)**(1.0/3)”或“Pi * X**3 / 3.0”等表达式。任何使用常数、标准运算符(加法、减法)的简单算术,乘法,除法,幂,括号)和“X”“Y”和“Z”符号。
现在我的任务非常值得期待——如何为“项目”实体设置一个新属性,称为“值”,将通过将 XY 和 Z 值插入相关的“公式”并评估表达式来计算。
注意事项: 1. 可能有数百万个“项目”实体,以及数百个“公式”。2. 我可以控制创建公式字符串的格式 --- 我可以让人们输入“$X+$Y”而不是“X+Y”,如果这样可以方便的话。3. 我将需要进一步快速计算归因于项目子集的“价值”的统计数据(总和、中位数、stdDeves、平均值等)
我的问题: 1. 一般如何去做。添加一个实数“Value”属性来缓存计算结果,或者一个在读取时重新计算的计算属性?2. 如何使用 NSExpression 插入值,而不是像“X”“Y”“Z”这样的变量符号。3. 我可以预先创建一个 NSExpression 并将其缓存为“公式”的另一个属性,并在以后使用它而不是解析和评估每个项目的公式吗?如何将解析的 NSExpression 存储在 CoreData 中?
我知道这是一个有很多子问题的大问题。任何提示将不胜感激!