2016-11-09 40 views
1

我正在挖掘gnuplot腳本。我在處理變量時遇到了麻煩。可用的gnuplot isstring函數?

我的計算變量有時是真實的,有時是字符串(「outrange」等)。

下一步我想在經過一些計算後將它們放入一個長字符串中,但我做不到。

例如,

my_return_var="1.2 3.4 5 outrange 9 20 3 4" 
newstr="" 
do for [tmp in my_return_var]{ 
    newstr=newstr.sprintf("%7.3f ",tmp*4) 
    print newstr 
} 

由於第四值是「outrange:超出」,sprintf的返回錯誤:f_sprintf:嘗試打印字符串值與數字格式

因此,如果gnuplot的具有這樣的功能,如果檢查輸入是否爲字符串,並返回1或0,如C中的isstring(),我可以跳過這個。

還有其他想法嗎?

回答

1

不,gnuplot沒有字符串檢查功能。但是你可以做eqne字符串比較來檢查對一個固定的佔位符:

my_return_var="1.2 3.4 5 outrange 9 20 3 4" 
newstr="" 
do for [tmp in my_return_var] { 
    if (tmp ne "outrange") { 
     newstr=newstr.sprintf("%7.3f ",tmp*4) 
     print newstr 
    } 
} 
+0

感謝這個,這是很簡單的輝煌。我沒有想象。 – aroman