本帖最后由 Nsqs 于 2017-1-19 21:46 编辑
方法1- @echo off&setlocal enabledelayedexpansion
- set "s=abcdefghijkmlnopqrstuvwxyz"
- for /l %%1 in (0 1 26)do call set #%%s:~%%1,1%%=#
- set /p str=输入汉字或字母:
- for /f "tokens=1 delims=:" %%1 in ('^(echo %str%^&echo.^)^|findstr /o "^.*$"')do set /a len=%%1-4
- for /l %%1 in (0 1 %len%)do (
- for /f %%2 in ("!str:~%%1,1!") do (
- if not defined #%%2 (call set s1=%%s1%%%%2)else call set s2=%%s2%%%%2
- )
- )
- echo 汉字部分:%s1%
- echo 字母部分:%s2%
- pause
复制代码 方法2- ' 2>nul &@echo off&cls&set /p str=输入汉字或字母: & call echo %%str%%|cscript -nologo -e:"vbs" "%~0"&pause&exit
- set regexp=new regexp
- set ws=wsh.stdin
- with regexp
- read=ws.readline
- .global=-1:.ignorecase=-1
- .pattern="[^\u4e00-\u9fff0]*"
- wsh.echo "汉字部分:" & .replace(read,empty)
- .pattern="[^a-z]*"
- wsh.echo "字母部分:" & .replace(read,empty)
- end with
复制代码 |