SORU
10 AĞUSTOS 2011, ÇARŞAMBA


Toplu iş dosyası: eğer dize dize (bir dosya değil)ise

Bir toplu iş dosyasında bir dize var abcdefg. bcd dize olup olmadığını kontrol etmek istiyorum.

Ne yazık ki bir arama bulduğum çözüm gibi görünüyordosyabir dize, bir dize bir dize değil.

Bunun için kolay bir çözüm var mı?

CEVAP
10 AĞUSTOS 2011, ÇARŞAMBA


Evet, kısaltmaları kullanmak ve özgün dize karşı kontrol edebilirsiniz:

@setlocal enableextensions enabledelayedexpansion
@echo off
set str1=%1
if not x%str1:bcd=%==x%str1% echo It contains bcd
endlocal

%str1:bcd=% bit boş bir dize ile str1 bcd, özgün farklı yapma yerini alacak.

Eğer özgün bcd bir dize içerir, yapmasaydın, Değiştirilmiş Sürümü aynı olacaktır.

Test:

c:\testarea> testprog hello

c:\testarea> testprog abcdef
It contains bcd

c:\testarea> testprog bcd
It contains bcd

Birkaç not:

  • if deyimi bu çözümün ET, her şeyi destekleyen bir şey.
  • Eşitlik iki tarafı önce x string bcd iyi çalıştığından emin olmak için. Ayrıca bazı "" ile başlayan bir karakter. yanlış karşı korur

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FlippinWindows | #1 Windows Tutorial Channel!

    FlippinWindo

    23 Mayıs 2010
  • incognitotraveler

    incognitotra

    27 Mayıs 2010
  • TokShogun

    TokShogun

    6 HAZİRAN 2009