2012-02-21 13 views
1

私はthis(ブールテスト "文字列は存在しますか?")と同様のテストを使用する必要のあるスクリプトを持っています。マニュアルの例では、通常%variable%が使用されていますが、遅延拡張を有効にしています。私のコードでは、%line!から%pdf%を削除する必要があります! 。 私の意図はここでlink(%変数%が使用されている例として、SETの_endbit、)のように類似し!lineから%pdf%を置き換える方法!バッチで

を行うことだったことは私のコードです:

@echo off 
setlocal EnableDelayedExpansion 
set "source=GEN 0 GENERAL.html" 
set "pdf=0_1_en.pdf" 
echo In file:%source% 
echo Look for anchor:%pdf% 

rem Process each line in %source% file: 
for /F "usebackq delims=" %%c in ("%source%") do (
    set "line=%%c" 
    rem Test if the line contain a pdf file I look for 

    echo on 
    cls  
    echo Line: !line! 
    REM PROBLEM HERE WITH VARIABLE !line! ? Need to replace %pdf% in !line! 
    CALL SET "pdfline=%%line:%pdf%=%%" 

    if not "!pdfline!" == "!line!" (
     echo Line: !line! 
     CALL SET tagline=%%tagline:%pdf%=%% 
     echo ACTUAL LINE: %tagline% 
     pause 
    ) 
) 
pause 

どこキーは、17行目にあります変数からpdfファイルを削除したい手伝ってくれますか?

スクリプトは、htmlファイル内の特定のテキストを検索します。テキストはpdf filenameに設定されています。必要に応じて、任意のhtmlファイルでテストすることができます。

答えて

1

あなたはこの

を使用し、その後、ラインから文字列リテラル「%PDFファイル%」を削除したい場合は、この

set "pdfline=!line:%pdf%=!" 

を使用し、その後、ラインから%のPDFファイル%の値を削除する場合

set "pdfline=!line:%%pdf%%=!" 
+0

素晴らしい!本当にありがとう。 – user1141649

関連する問題