回复 12# aloha20200628
按千分段的想法大概像这样,就拿0751这个来改一下- @echo off
- setlocal enabledelayedexpansion
- set strr=九千九百九十九亿九千九百九十九万九千九百九十九
- set strr=!strr:零=!
- for %%i in (一 二 三 四 五 六 七 八 九) do (
- set /a x+=1
- set _%%i=!x!
- )
- set x=1
- for %%i in (十 百 千 万 亿) do (
- set /a x*=10
- set #%%i=!x!
- set %%i=1
- )
- set #万=1000
- set #亿=1000
-
- for %%a in (%strr:千= %) do (
- set str=%%a
- set str=!str:万=千!
- set str=!str:亿=千!
- for /l %%i in (0,2,8) do (
- set var=!str:~%%i,2!
- if not "!var!"=="" (
- if not "!var:~1!"=="" set /a m1=!var:~1!
- set /a m2=!var:~,1!
- if "!m1!"=="1" (
- set /a n+=_!var:~,1!*#!var:~1!
- ) else if "!m2!"=="1" (
- set /a n+=#!var:~,1!+_!var:~1!
- ) else (
- set /a n+=_!var!
- )
- set m1=
- set m2=
- )
- )
- set nn=!nn!!n!
- set n=
- )
- echo,!nn!
- pause
复制代码
|