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

1.txt:
0123456789abcdefghijklmnopqrstuvwxyz


生成 2.txt:
  1. sed "s/./&\r\n/g" 1.txt | findstr /n . >2.txt
复制代码
2.txt:
1:0
2:1
3:2
4:3
5:4
6:5
7:6
8:7
9:8
10:9
11:a
...


然后直接找:
  1. rem 查找字符 a 的位置
  2. findstr ":a$" 2.txt | sed "s/:.//"
复制代码
  1. rem 查找位置为 11 对应的字符
  2. findstr "^11:" 2.txt | sed "s/^[0-9]\+://"
复制代码
1

评分人数

TOP

本帖最后由 tmplinshi 于 2011-7-31 16:55 编辑

回复 5# lfoqtal
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set 原文=0123456789abcdefghijklmnopqrstuvwxyz
  4. set /p s=请输入文字:
  5. conset /a p = find("%s%","%原文%") + 1
  6. echo (%s%)的对应代码为 %p%
  7. pause
  8. set /p p=请输入代码:
  9. set /a pp = p - 1
  10. echo %p%代码对应文字为 !原文:~%pp%,1!
  11. pause
复制代码
conset 下载地址:
http://bathome.net/thread-12865-1-3.html

补充:conset 不能查找中文字符的位置。

TOP

测试发现,conset /a p = find("%s%","%原文%") + 1 不能查找中文字符的位置。

TOP

返回列表