Board logo

标题: [文本处理] [已解决]批处理如何统计 一个字符串 在另一个字符串中出现的次数 [打印本页]

作者: cya011    时间: 2018-12-17 00:04     标题: [已解决]批处理如何统计 一个字符串 在另一个字符串中出现的次数

set id=123
set str=ccc123bbcde123ffk
如何求  123 在 str中出现的次数   
谢谢了!
作者: yhcfsr    时间: 2018-12-17 08:47

  1. @echo off
  2. set "id=123"
  3. set "str=ccc123bbcde123ffk"
  4. :lp
  5. if "%str:~,3%" equ "%id%" (
  6. set/a "n+=1"
  7. set "str=%str:~3%"
  8. ) else set "str=%str:~1%"
  9. if "%str%" neq "" goto :lp
  10. echo;%n%
  11. pause
复制代码

作者: cya011    时间: 2018-12-17 11:10

谢谢 yhcfsr!  你真太棒了,代码简单明实用了
作者: WHY    时间: 2018-12-17 21:43

  1. echo off
  2. set "str=ccc123bbcde123ffk"
  3. set n=-1
  4. for %%i in ("%str:123=" "%") do set /a n+=1
  5. echo;%n%
复制代码

作者: Batcher    时间: 2018-12-18 09:28

  1. @echo off
  2. powershell -c "('ccc123bbcde123ffk' -Split '123').Count-1"
  3. pause
复制代码

作者: Batcher    时间: 2018-12-18 10:38

回复 6# tigerpower


你和楼主是同一个人吗?
希望楼主澄清一下真实的需求是怎样的




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