[前の記事]« 起動時の引数のうち、最後の引数しか取得できない
[次の記事]アプリのログファイルに指定文字列が存在していた場合にアプリケーションログに表示させたい »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「FOR /F」索引へ
▲カテゴリー「SET, PATH, %環境変数%」索引へ

スペース区切りを含む環境変数からn番目以降のトークンを取り出す

1112.
変数に格納された文字列の取得について
2006年05月12日(金) 17時27分
jun
●DOS/Windowsのバージョン
 Microsoft Windows XP + SP2

変数に格納された文字列の取得について教えて下さい。
変数1に aaa bbb ccc ddd eee
という文字列が格納されているとします。
(DOS> set 変数1=aaa bbb ccc ddd eee)
このとき、空白で区切られた3つめ以降の文字列
(ccc ddd eee)を変数2に設定するにはどうすれば
できるでしょうか。
色々調べたのですが、頭(または後ろ)から何文字
目という指定はできるようなのですが、
区切られた何番目と言う指定方法がわかりません
でした。

以上、よろしくお願いいたします。
1113.
Re:変数に格納された文字列の取得について
2006年05月12日(金) 17時34分
otn
>変数1に aaa bbb ccc ddd eee
>という文字列が格納されているとします。
>(DOS> set 変数1=aaa bbb ccc ddd eee)
>このとき、空白で区切られた3つめ以降の文字列
>(ccc ddd eee)を変数2に設定するにはどうすれば
>できるでしょうか。

set 変数1=aaa bbb ccc ddd eee
for /f "tokens=2*" %%A in ("%変数1%") do set 変数2=%%B
echo %変数2%

%%A に第2トークンが入り、第3トークン以降がまとめて%%Bに入ります。区切り文字を空白以外にも出来ます。詳しくは for /? を。

1114.
Re:変数に格納された文字列の取得について
2006年05月12日(金) 18時08分
jun
otn さん、ありがとうございます。
教えていただいた方法でうまく行きました。
とても助かりました(for /?もよく確認します)。

 
 


カテゴリー「FOR /F」索引へ
カテゴリー「SET, PATH, %環境変数%」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2006年05月12日 22:10に投稿されたエントリーのページです。

ひとつ前の投稿は「起動時の引数のうち、最後の引数しか取得できない」です。

次の投稿は「アプリのログファイルに指定文字列が存在していた場合にアプリケーションログに表示させたい」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート