2016-08-22 12 views
0

私はいくつかの異なる行を持つテキストファイルを持っています。私はCellNumberで始まる行の番号を取得したいと思います。テキストファイルを解析して番号を取得する

file.txtなどは

Hello there 
my name is struct 
CellNumber 4.0050 
I am from Timbuktu 

はどうすれば変数に数4.005を保存することができますか?

これは私の試みです:あまりにも複雑

for /F "tokens=*" %%A in (file.txt) do (
    echo %%A 

    IF "%%A:~0,10%"=="CellNumber" (
     set var=%var:~-5% 
    ) 
) 

echo result: %var 
+1

[テキストファイルから変数への値の割り当て](http://stackoverflow.com/questions/18800484/assigning-a-value- from-a-text-fi le-to-a-variable) – aschipfl

答えて

3

方法。 findまたはfindstrを使用して、目的の行とその行を解析するための適切なトークンと区切り文字を取得します。必要なのは次のとおりです。

for /F "tokens=2" %%A in ('type file.txt^|findstr /b "CellNumber"') do set var=%%A 
echo result: %var% 

トークンと区切り文字のfor /?をお読みください。

これは回避/あなたのコード内の4つのエラー訂正:
を - あなたはdelayed expansion
を必要とする - - あなたはfor変数(%%A
で部分文字列を使用することはできません変数が%var
%var%ていない参照されています - あなたの例では、6つの文字ではなく、5つではない

関連する問題