0

しばらくの間解決できない質問があります。どこを見ても、解決策を思いつくことができないようです。

ユーザーに電子メール アドレスの入力を求めるバッチ ファイルを作成する必要があります。この電子メール アドレスは、「@」文字でトリミングされます。残りのドメインは「nslookup」コマンドで使用されますが、メール交換サーバーのみをフィルタリングしたいと考えています。

例:

「Cooldude@gmail.com」

次に、次のビットが必要です。

「gmail.com」

次に、次のことが発生する必要があります。

nslookup  
set type=mx  
gmail.com  

これは私がこれまでに持っているものです:

@echo off  
set /p email="Enter your email address : "  
call :findString email "@" pos  
echo.%pos%  
set ex=%email:~%-pos%%  
echo Email Exchange is: %ex%  
pause  

:findString  
SETLOCAL ENABLEDELAYEDEXPANSION  
set "pos="  
set "str=!%~1!"  
for /L %%a in (0,1,1023) do (  
    set "s=!str:~%%a!"  
    if not defined pos if "%~2!s:*%~2=!"=="!s!" set "pos=%%a"  
)  
ENDLOCAL & IF "%~3" NEQ "" SET "%~3=%pos%"  

GOTO:EOF

事前にサンクス!;P

4

1 に答える 1

2

これを試して:

@echo off &setlocal
set "email=Cooldude@gmail.com"
set "email=%email:*@=%"
echo %email%
endlocal
于 2013-03-18T06:33:20.783 に答える