windows - 可以解析文件夹位置以查找 BATCH 中某些字符的实例吗?
问题描述
我有一个 .bat 文件,我试图解析文件夹位置字符串中的每个字符,以便计算某个字符的出现次数。
我怎么能在 .bat 文件中做到这一点?
是否可以使用 FOR 循环来执行与此类似的代码?:
FOR /F %%i in (%cd%) DO (IF %%i =="w" counter+=1)
我知道以上不正确,我才刚刚开始。
到目前为止,还没有在我的研究中找到答案。
解决方案
要么使用子字符串(查看每个字符),这对于较长的字符串来说很慢,要么计算单词并在将每个替换"w"
为" w"
. 不同之处在于w
(它忽略大写,所以它计数w
plus W
)的计数:
@echo off
set "string=Hello beautiful World"
for /f %%A in ('(for %%a in (%string%^) do @echo %%a^)^|find /c /v ""') do set A=%%A
for /f %%A in ('(for %%a in (%string:l= l%^) do @echo %%a^)^|find /c /v ""') do set B=%%A
set /a count=B-A
echo --- %count%
不只是删除空格的原因是for
标准分隔符不仅仅是空格,而是空格、制表符、逗号......
注意:这不会处理毒字符。
推荐阅读
- magento - 杠杆浏览器缓存在新的登台服务器上
- reactjs - 使用 redux 和 reactjs 获取对象和数组格式的 API Json 数据
- javascript - JS TypeError:无法读取 null 的属性“样式”-Chrome
- html - Divs 正确停靠,没有浮动
- elixir - Phoenix 尝试构建数据库时出现 unique_constraint 错误
- lambda - lambda函数中的Pyspark udf函数错误
- ruby-on-rails - 基于缺少设置会话变量的 Rails 测试失败 - 如何在 Rails 5.2 中设置?
- css - 使用 Bulma CSS 阻止图像和文本
- javascript - 输入字段通过添加/删除功能自动显示在 textarea 上
- delphi - Indy FTP 客户端是否缓存?