0

DDMathParserユーザー入力(文字列)から評価される式文字列を作成しようとしています

例: 3 + ln(2) + var

あらゆる種類のトークンを見つけるために、組み込みTokenizer関数 fromを使用しようとしています。DDMathParserただし、次のコードを使用すると、関数トークンが見つかりません。

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標準の関数文字列を見つけるために、内部で別のアプローチを使用する必要がありますか? ありがとう!

4

1 に答える 1