0

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

 
siryahya
siryahya
کاربر طلایی1
تاریخ عضویت : اسفند 1389 
تعداد پست ها : 158652
محل سکونت : ▂▃▄▅▆▇█Tabriz█▇▆▅▄▃▂

حذف فاصله و کوتیشن از عبارت وارد شده در ورودی فایل‌های 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
توجه داشته باشید که کد بالا، فقط کوتیشن را از دو طرف عبارت ورودی حذف می‌نماید.

 

ترکی زبان قربون صدقه رفتنه داریم که: گوزلرین گیله‌سین قاداسین آلیم که یعنی درد و بلای مردمک چشات به جونم …!.

جمعه 9 اسفند 1392  11:50 AM
تشکرات از این پست
دسترسی سریع به انجمن ها