标题: [文本处理] 批处理如何判断字符串是否为纯数字? [打印本页]
作者: apython 时间: 2016-4-10 14:26 标题: 批处理如何判断字符串是否为纯数字?
本帖最后由 pcl_test 于 2016-4-10 14:39 编辑
例如a.txt--------文本如下- 越强大越自律
- 44525
- 明眸゜ Sunshine
- 447384
- 牢
- 448120
- ZzzZzz-
- 46426
- 古 奈
- 4762
- self
- 49495
- 4975100
- 人定胜天
- 501709
- 避风港
- 5264
- .
- 527
- Mr 张
- 535555
- 萌帝。
- 571027
- 黄昏.回忆
复制代码
处理之后b.txt-----------如下- 44525
- 447384
- 448120
- 46426
- 4762
- 4762
- ....
复制代码
要求只提取含有数字的行,其中不存在数字汉字同行的情况。
求解。
记得以前有见过此类相比较判断的帖子。
作者: CrLf 时间: 2016-4-10 14:36
本帖最后由 CrLf 于 2016-4-10 15:14 编辑
- @findstr /v "[^0-9]" a.txt >b.txt
复制代码
作者: pcl_test 时间: 2016-4-10 14:38
http://www.bathome.net/viewthread.php?tid=33887
http://www.bathome.net/viewthread.php?tid=5119
作者: codegay 时间: 2016-4-10 14:45
本帖最后由 codegay 于 2016-4-10 15:05 编辑
楼主名为a python- """
- 2016年4月10日 14:44:09 codegay
- """
- #方法1,isdigit()
- with open("11.txt") as f:
- for r in f:
- if r.strip().isdigit():
- print(r)
-
- #方法2正则
- import re
- with open("11.txt") as f:
- for r in f:
- if re.match(r"^\d+$",r):
- print(r)
复制代码
向ivor同学学习。
作者: happy886rr 时间: 2016-4-10 14:45
- @echo off&findstr /rc:"^ *[0-9][0-9]* *$" test.txt>new.txt
复制代码
回复 1# apython
作者: apython 时间: 2016-4-10 15:31
回复 3# pcl_test
嗯
作者: /zhqsystem/zhq 时间: 2016-4-10 17:48
回复 1# apython
简易版精确判断,{特殊字符有不确定因素谨慎使用}
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('type "%~f1"')do (set "#%~nx1=%%i"
- for /l %%j in (0,1,8192)do if /i not "!#%~nx1:~%%j,1!"=="" (
- if /i "!#%~nx1:~%%j,1!"=="0" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="1" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="2" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="3" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="4" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="5" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="6" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="7" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="8" (rem:
- )else if /i "!#%~nx1:~%%j,1!"=="9" (rem:
- )else (set "#%~nx1="
- )
- )
- if /i not "!#%~nx1!"=="" echo,!#%~nx1!
- )
- pause
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |