我米拆分式字符串"*/+-()"
作爲我的圖案(例如。a*b+c
被串)和I m到處在輸出列表作爲(a b c)
其中a
,b
,c
是變量幷包含一些值,如5
,10
,15
。分裂式,並再次再生和reevaluateing式
我需要的是:我應該能夠直接替換變量中的值並評估表達式。
該公式取自用戶並隨時更改。所以如果用戶輸入(a/b)
,應該用實際值(5/10)
自動替換它,然後返回結果0.5。
的公式從變量數目有限(例如爲a
,b
,c
。)形成,並且它可以使用+
,-
,*
,/
,(
,)
作爲運算符。
問題是,在分解變量後,我無法用它們的值替換它們或評估方程。請儘可能以簡短的表達方式幫助我完成這項任務。提前致謝。
你爲什麼不簡單地把字符串傳給'expr'?它將進行必要的替換並返回操作的結果。 – Jerry
輸入就像a * b + c。我需要將(a b c)列表轉換爲($ a * $ b + $ c)之類的東西。這就是爲什麼它很複雜。 –
如果你有一個數組呢?正如'a(b)+ c'?你會如何區分它與'a(b * d)+ c'?第一個通常可以變成'$ a(b)+ $ c'或'$ a($ b)+ $ c',而第二個可以是'$ a($ b * $ d)+ $ c'或'$ a ($ b * d)+ $ c'或'$ a(b * $ d)+ $ c'或'$ a($ {b * d})+ $ c'或'$ a(b * d)+ $ C' ...? – Jerry