(ترفندستان Tarfandestan ITC-RSS)

(ترفندستان Tarfandestan ITC-RSS)

(ترفندستان Tarfandestan ITC-RSS)

(ترفندستان Tarfandestan ITC-RSS)

حذف فاصله و کوتیشن از عبارت وارد شده در ورودی فایل‌های Batch

در صورتی که قصد نوشتن یک فایل Batch را داشته باشید که به عنوان ورودی از کاربر عبارتی را دریافت کند، این امر بسیار مهم خواهد بود که در سمت راست، چپ و یا بین حروف عبارت وارد شده از کاراکتر فاصله (Space) و یا دو کوتیشن (" ") استفاده نشده باشد؛ زیرا وجود هر یک از این کاراکترها، استفاده شما از متغیر مدنظر را دچار مشکل می‌کند. در این ترفند یاد خواهید گرفت که چگونه کاراکترهای فاصله و دو کوتیشن را از ورودی اسکریپت حدف نمایید.

 

حذف فاصله از سمت چپ، سمت راست و بین حروف عبارت ورودی
فرضاً اگر متغیر شما str باشد، با استفاده از این کد، متغیر خود را اصلاح کنید:

set str=%str: =%

به عنوان مثال برنامه‌ی شما به چنین شکلی می‌تواند باشد:

@echo off
set /p str=
set str=%str: =%
echo.%str%
pause


حذف فاصله از سمت چپ عبارت ورودی
فرضاً اگر متغیر شما str باشد، با استفاده از این کد، متغیر خود را اصلاح کنید:

for /f "tokens=* delims= " %%a in ("%str%") do set str=%%a

به عنوان مثال برنامه‌ی شما به چنین شکلی می‌تواند باشد:

@echo off
set /p str=
for /f "tokens=* delims= " %%a in ("%str%") do set str=%%a
echo.%str%
pause


حذف فاصله از سمت راست عبارت ورودی
فرضاً اگر متغیر شما str باشد، با استفاده (ترفندستان) از این کد، متغیر خود را اصلاح کنید:

for /l %%a in (1,1,31) do if "!str:~-1!"==" " set str=!str:~0,-1!

به عنوان مثال برنامه‌ی شما به چنین شکلی می‌تواند باشد:

@echo off
set /p str=
for /l %%a in (1,1,31) do if "!str:~-1!"==" " set str=!str:~0,-1!
echo.%str%
pause


حذف کوتیشن از دو طرف عبارت ورودی
فرضاً اگر متغیر شما str باشد، با استفاده از این کد، متغیر خود را اصلاح کنید:

for /f "useback tokens=*" %%a in ('%str%') do set str=%%~a

به عنوان مثال برنامه‌ی شما به چنین شکلی می‌تواند باشد:

@echo off
set /p str=
for /f "useback tokens=*" %%a in ('%str%') do set str=%%~a
echo.%str%
pause

توجه داشته باشید که کد بالا، فقط کوتیشن را از دو طرف عبارت ورودی حذف می‌نماید.

 

نظرات 0 + ارسال نظر
امکان ثبت نظر جدید برای این مطلب وجود ندارد.