批处理如何计算任意字符串的字符长度?
2013-03-11 22:04
302 查看
如题:比如 "ABCDEFGHIJ AGFD FAS DFDS" 引号中包含字母和空格的一个字符串,如何编辑批处理计算出其长度?
方法一:
T.CMD 内容如下: 运行 T.CMD "ABC DEF GHI " 就可以得到引号中字符串的长度
-------------------------------------
@ECHO OFF
IF %1*==* GOTO :EOF
ECHO %1
SET ABC=%~1
SET /A N=0
:LOOP
SET ABC=%ABC:~0,-1%
SET /A N=%N%+1
IF "%ABC%" EQU "" GOTO END
GOTO LOOP
:END
ECHO %N%
PAUSE
方法二:
方法一:
T.CMD 内容如下: 运行 T.CMD "ABC DEF GHI " 就可以得到引号中字符串的长度
-------------------------------------
@ECHO OFF
IF %1*==* GOTO :EOF
ECHO %1
SET ABC=%~1
SET /A N=0
:LOOP
SET ABC=%ABC:~0,-1%
SET /A N=%N%+1
IF "%ABC%" EQU "" GOTO END
GOTO LOOP
:END
ECHO %N%
PAUSE
方法二:
折半法(渐近法)
@echo off&setlocal enabledelayedexpansion set "str=afdjg do men contgfirfmck song putint" set /a max=8190,min=0 for /l %%a in (1,1,14) do ( set /a "num=(max+min)/2" for /f "delims=" %%b in ("!num!") do if "!str:~%%b!" equ "" (set /a max=num) else set /a min=num ) if "!str:~%num%!" neq "" set /a num+=1 echo 经计算字符串str共有%num%个字符 pause>nul(通过逐步缩小 判断范围。 好像中央2 购物街 节目的判断商品价格的方法。呵呵。多次喊出价格,与真实价格比高低,确定真实价格所在的范围。不断喊价缩小范围直到最终得到正确答案。)
相关文章推荐
- lua 含中文的字符串处理--分离字符、计算字符数、截取指定长度
- 处理字符串的一些js/jq方法(去除HTML,去除空格,计算真实长度,截取中英文字符)
- 处理字符串的一些js/jq方法(去除HTML,去除空格,计算真实长度,截取中英文字符)
- 处理URL中的中文等字符,计算含有中英文的字符串的长度
- java中如何计算一个字符串的byte长度(一个汉字多少字符)
- Objective-C ,ios,iphone开发基础:如何判断一个字符是不是中文字符。计算一段字符串的长度。
- PHP计算字符串长度,PHP如何计算短信的长度/字数?
- iOS如何计算字符串的长度
- 计算一段字符串的长度(中文算两个字符)
- 如何知道一个未知长度的字符串哪个字符出现的次数最多
- 如何在字符串中加入回车换行,tab字符(关于字符串处理)
- Longest Substring Without Repeating Characters计算字符串中不含有重复字符的连续字符串的最大长度
- 尾单词长度、1 3 9 27 81 实现1-121任意算法、去除重复字符并排序、拼音转数字、按要求分解字符串
- 计算出一个字符串中最长的字符的长度
- 计算字符串长度,中文俩字符,数字…
- Java String类型含普通字符以及中文字符,计算等价的中文字符串长度
- 如何处理ODBC中EXCEL驱动读取EXCEL文件中字段长度大于255字符时出现的"数据截断"问题.
- 如何不用数组写一个任意长度字符逆序
- 如何在字符串中加入回车换行,tab字符(关于字符串处理)
- 如何在字符串中加入回车换行,tab字符(关于字符串处理) (转)