[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何统计一行被指定字符分割的字符串共有几个字段/几列

本帖最后由 pcl_test 于 2016-8-6 22:23 编辑

批处理如何统计指定字符的个数?
文件是CSV格式,逗号为分割符,但是不知道有几列。
想通过统计1行数据的逗号个数来知道是几列。
求代码。
如下
22,33,44,55,66
4个逗号,那我就知道是5列。

回复 1# daluobo
  1. @echo off
  2. set "line=22,33,44,55,66"
  3. set /a "sumCol=(%line:,=&0)+1+(%&0)+1"
  4. set sumCol
  5. pause
复制代码
1

评分人数

TOP

解决了,能否解释一下。

TOP

第三行替换后变成
set /a "sumCol=(22&0)+1+(33&0)+1+(44&0)+1+(55&0)+1+(66&0)+1"
&在这里为按位与运算,那么按优先级计算后为set /a "sumCol=0+1+0+1+0+1+0+1+0+1"

TOP

返回列表