Board logo

标题: [其他] 批处理如何给数字添加千分符? [打印本页]

作者: yunyan100    时间: 2018-9-8 14:04     标题: 批处理如何给数字添加千分符?

如何一串数字右向左添加分号
各位好,好像此前有垃圾信息么?请教下,就是rmb

从右向左隔三个数字添加","是正确的
  1. set pax=12345678
  2. 123
  3. 1,234
  4. 12,345
  5. 12,345,678
复制代码
我弄的从左向右隔三个数字","且if是删除后面空的","不正确
  1. set pax=12345678
  2. 123,4
  3. 123,45
  4. 123,456
  5. 123,456,7
  6. set s=%pax%
  7. set pax=!s:~0,3!,!s:~3,3!,!s:~6,3!,!s:~9,3!,!s:~12,3!
  8. if "%pax:~-1%" equ "," set "pax=%pax:~,-1%"
  9. if "%pax:~-1%" equ "," set "pax=%pax:~,-1%"
  10. if "%pax:~-1%" equ "," set "pax=%pax:~,-1%"
复制代码
  1. set s=%pax%
  2. set pax=!s:~0,3!
  3. set pax1=!s:~0,1!,!s:~1,3!
  4. set pax2=!s:~0,2!,!s:~2,3!
  5. set pax3=!s:~0,3!,!s:~3,3!
  6. set pax4=!s:~0,1!,!s:~1,3!,!s:~4,3!
  7. set pax5=!s:~0,2!,!s:~2,3!,!s:~5,3!
  8. set pax6=!s:~0,3!,!s:~3,3!,!s:~6,3!
  9. set pax7=!s:~0,1!,!s:~1,3!,!s:~4,3!,!s:~6,3!
  10. set pax8=!s:~0,2!,!s:~2,3!,!s:~5,3!,!s:~8,3!
  11. set pax9=!s:~0,3!,!s:~3,3!,!s:~6,3!,!s:~9,3!
复制代码
这可以从右向左,但查询变量有几个,比下面,好选择选择,如何知道变量多少个?
set pax=12345678   8个
set pax=123488      6个
作者: xczxczxcz    时间: 2018-9-8 14:52

8%%3余2,从第2个后开如加;6%%3整除,从第3个后开始加;
作者: yunyan100    时间: 2018-9-8 15:17

回复 2# xczxczxcz 个体
麻烦下具体下
作者: yunyan100    时间: 2018-9-8 16:40

set /a bit+= -2
搞定了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2