通常我們需要提取文本整行內容時都是這麼寫的。複製代碼 代碼如下:for /f "delims=" %%a in (a.txt) do echo.%%a但是分號開頭的行呢,for也會忽略掉,很多時候我們需要這些行,怎麼辦。 用findstr 等外部命令太麻煩,用eol 忽略一個不可見字元,不失為一個不錯的辦法,但始終忽略了某個字元開頭的行,且擷取這個不可見字元也比較麻煩。 其實有更簡單的方法,就是把eol放在最後。複製代碼 代碼如下:@echo off rem
複製代碼 代碼如下:IF OBJECT_ID('TB')IS NOT NULL DROP TABLE TB GO CREATE TABLE tb (ID INT IDENTITY(1,1),VALUE NVARCHAR(100)) INSERT tb SELECT N'中國' UNION ALL SELECT N'中國人' UNION ALL SELECT N'中國人民' UNION ALL SELECT N'日本' UNION ALL SELECT N'日本人' UNION ALL
當我寫下如下sql語句時,我得到了輸入@c參數時想得到的結果集。select * from @tb t where t.id in (select id from tb where f = @c) 但如果有@a,@b,@c,而它們分別想從@tb中得到不同的結果集,例如 複製代碼 代碼如下: if @a is not null begin --得到@a想得到的 end if @b is not null begin --得到@b想得到的 end if @c is not null begin --
複製代碼 代碼如下:@echo off & setlocal EnableDelayedExpansion :: 計算字串的長度 :: :: :began set mystr= set /p mystr=輸入要計算長度的字串(直接斷行符號退出): if not defined mystr goto :eof for /l %%i in (0,1,1000) do if "!mystr:~%%i,1!"=="" set strlen=%%i && goto :_endfor :_endfor ::
比較以下兩段代碼的執行結果差異: 1、 @echo off for /f "delims=" %%i in (test.txt) do echo /%%i/ pause 2、 @echo off for /f "tokens=*" %%i in (test.txt) do echo /%%i/ pause test.txt 的內容為: abc 。行首有若干空格。 看到有什麼差別了嗎? 原因:"delims=" 的含義是取消預設的分隔字元,所以會把行上的內容照搬下來,而 "tokens=*"
dim ie set ie=createobject("internetexplorer.application") ie.visible=true ie.navigate "http://www.ln.chinaunicom.com/index.shtml" While ie.busy or ie.readystate<>4 EndWhile