2011-07-07 146 views
1

對於我正在編寫的程序,我需要從文件中讀取值。當我這樣做時,我會得到(x, y)的值。我需要做一個腳本來分割這些,所以$xx value$yy value如何檢查數字是否在一個範圍內?

然後,我需要做一個檢查。例如,檢查$x是否在$x-max$x-min之間,其中$x-max$x-min是整數。

+0

你是什麼意思「給用戶一個範圍」?給他們一些關於這個字符串的信息,檢查這個字符串,或者告訴他們字符串中可能的數字範圍? – l0b0

+1

請重新編寫您的問題,以刪除有關平板電腦,谷歌搜索,加速度計等的所有無關緊要的內容,然後就您想要的內容提出簡明的問題。我有和l0b0相同的問題 - 你的實際問題非常短暫和模糊。 – camh

+0

已編輯。這更清楚嗎? – saphyr212

回答

3

將字符串分割爲兩個數字:

$ foo="(506,-664)" 
$ declare -a bar=${foo//,/ } 
$ for integer in ${bar[@]} 
> do 
>  echo "$integer" 
> done 
506 
-664 
+0

這幾乎就是我所需要的!有沒有辦法從那裏拆分這兩個數字? – saphyr212

+0

err nvm我使用echo $ integer並將它們放在一行上。 – saphyr212

1

除非我把這一切都弄錯了,否則我會想象你只需要處理字符串並導出數字組件。只需掃描字符串,直到「,」字符(對於x),然後從逗號後的第一個字符開始掃描,直到y結束。

+0

我該怎麼做? – saphyr212

0

一噸的搜索後,我終於找到了我的答案。我想我看起來不夠努力。對於任何人誰也有類似的問題,對我來說,代碼是:

如果跳回到bar.txt包含(X,Y),

$貓/foo/bar.txt | tr -d「()」| sed's /,//g'| cut -d「」-f1 x $ cat /foo/bar.txt | tr -d「()」| sed's /,//g'|切-d」「-f2 Ÿ

我敢肯定有一個更混亂的方式做到這一點,但是這讓我我需要的結果。

相關問題