首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >osx DDMathParser -在字符串中查找函数标记

osx DDMathParser -在字符串中查找函数标记
EN

Stack Overflow用户
提问于 2018-05-06 17:43:44
回答 1查看 48关注 0票数 0

我尝试从用户输入(字符串)构建一个用DDMathParser求值的表达式字符串

例如:3+ ln(2) + var

我尝试使用DDMathParser内置的Tokenizer函数来查找所有类型的令牌。但使用以下代码将找不到任何函数标记:

代码语言:javascript
复制
equationInputString = "3+ln(2)+var"
do{
   let token = try Tokenizer(string: equationInputString).tokenize()
   for element in token {
       let tokenString = element.string
       let tokenKind = element.kind
       print(tokenString, ";", tokenKind)
   }
} catch {
       print("Tokenizer error in VC!", error)
}

/* output:
3   ; number
+   ; operator
ln  ; identifier    <-- not recognized as "ln()" function
(   ; operator
2   ; number
)   ; operator
+   ; operator
var ; identifier
*/

有没有办法提取ln作为函数令牌?我是否需要在DDMathParser中使用另一种方法来查找标准函数字符串?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-05-11 08:15:37

DDMathParser作者在这里...

答案是“视情况而定”。你想做什么?DDMathParser的典型用法是将整个过程转换为最终的Expression类型,然后在结果树中递归查找具有"ln"类型的.function类型的Expression

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50198311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档