find和findstr
find与findstr
例“
在文件中搜索字符串。
1.findstr . 2.txt 或 Findstr "." 2.txt
从文件2.txt中查找任意字符,不包括空字符或空行
====================
2.findstr .* 2.txt 或 findstr ".*" 2.txt
从文件2.txt中查找任意字符包括空行和空字符
====================
3.findstr "[0-9]" 2.txt
从文件2.txt中查找包括数字0-9的字符串或行
====================
4.findstr "[a-zA-Z]" 2.txt
从文件2.txt中查找包括任意字符的字符串或行
====================
5.findstr "[abcezy]" 2.txt
从文件2.txt中查找包括a b c e z y字母的字符串或行
====================
6.findstr "[a-fl-z]" 2.txt
从文件2.txt中查找小写字符a-f l-z的字符串,但不包含g h I j k这几个字母。
====================
7.findstr "M[abc] [hig]Y" 2.txt
从文件2.txt中可以匹配 MaiY, MbiY, MahY等…..
====================
8. ^和$符号的应用
^ 表示行首,"^step"仅匹配 "step hello world"中的第一个单词
$ 表示行尾,"step$"仅匹配 "hello world step"中最后一个单词
====================
9.findstr "[^0-9]" 2.txt
如果是纯数字的字符串或者行便过滤掉,例如2323423423 这样的字符串,如果是345hh888这样的形式就显示出来。
====================
10.findstr "[^a-z]" 2.txt
同上,如果是纯字母的字符串或者行便过滤掉,例如 sdlfjlkjlksjdklfjlskdf这样的字符,如果是sdfksjdkf99999这样的形式,掺杂着数字就不成了
====================
11.*号的作用
前面已经说过了 ".*"表示搜索的条件是任意字符,*号在正则表达式中的作用不是任何字符,而是表示左侧字符或者表达式的重复次数,*号表示重复的次数为零次或者多次。
====================
12.findstr "^[0-9]*$" 2.txt
这个是匹配找到的纯数字,例如 234234234234,如果是2133234kkjl234就被过滤掉了。
Findstr "^[a-z]*$" 2.txt
这个是匹配找到的纯字母,例如 sdfsdfsdfsdf,如果是213sldjfkljsdlk就被过滤掉了
=====================
批处理编写手机号查找程序
@echo off
title 手机号码归属地查询
mode con lines=10 cols=31
:Main
cls
echo.
echo.
echo 请输入手机号码:
echo.
set input=
set /p input=
if not defined input exit
if "%input:~10%"=="" goto Main
if not "%input:~11%"=="" goto Main
echo %input%|findstr "^1[3,5][0-9]*$">nul
cls
echo.
set ID=%input:~0,7%
for /f "tokens=2,4,6,8,10 delims='" %%i in ('findstr /r "%ID%" 手机信息数据库.txt') do (
echo ━━━━━━━━━━━━━━━
echo 来自: %%k %%l
echo.
echo 品牌:%%m
echo.
echo 电话区号:%%j
echo ━━━━━━━━━━━━━━━
)
pause>nul
goto Main
手机数据信息库内容
(1, '1300000', '010', '北京', '北京', '联通130卡'),
(2, '1300001', '0519', '江苏', '常州', '联通如意通卡'),
(3, '1300002', '未知', '未知', '未知', '未知'),
(4, '1300003', '未知', '未知', '未知', '未知'),
(5, '1300004', '未知', '未知', '未知', '未知'),
(6, '1300005', '未知', '未知', '未知', '未知'),
(7, '1300006', '025', '江苏', '南京', '联通130卡'),
(8, '1300007', '未知', '未知', '未知', '未知'),
(9, '1300008', '未知', '未知', '未知', '未知'),
(10, '1300009', '未知', '未知', '未知', '未知'),
(11, '1300010', '010', '北京', '北京', '联通130卡'),
(12, '1300011', '010', '北京', '北京', '联通130卡'),
(13, '1300012', '022', '天津', '天津', '联通130卡'),
(14, '1300013', '022', '天津', '天津', '联通130卡'),
(15, '1300014', '022', '天津', '天津', '联通130卡'),
(16, '1300015', '0533', '山东', '淄博', '联通130卡'),
(17, '1300016', '0535', '山东', '烟台', '联通130卡'),
(18, '1300017', '0531', '山东', '济南', '联通130卡'),
(19, '1300018', '022', '天津', '天津', '联通130卡'),
(20, '1300019', '022', '天津', '天津', '联通130卡'),
(21, '1300020', '021', '上海', '上海', '联通130卡'),
(22, '1300021', '021', '上海', '上海', '联通130卡'),
(23, '1300022', '021', '上海', '上海', '联通130卡'),
(24, '1300023', '021', '上海', '上海', '联通130卡'),
(25, '1300024', '021', '上海', '上海', '联通130卡'),
(26, '1300025', '025', '江苏', '南京', '联通130卡'),
(27, '1300026', '025', '江苏', '南京', '联通130卡'),
(28, '1300027', '0535', '山东', '烟台', '联通130卡'),
(29, '1300028', '025', '江苏', '南京', '联通130卡'),
(30, '1300029', '025', '江苏', '南京', '联通130卡'),
(31, '1300030', '025', '江苏', '南京', '联通130卡'),
(32, '1300031', '025', '江苏', '南京', '联通130卡'),
(33, '1300032', '025', '江苏', '南京', '联通130卡'),
(34, '1300033', '0510', '江苏', '无锡', '联通130卡'),
(35, '1300034', '0510', '江苏', '无锡', '联通130卡'),
(36, '1300035', '0510', '江苏', '无锡', '联通130卡'),
(37, '1300036', '0510', '江苏', '无锡', '联通130卡'),
(38, '1300037', '0510', '江苏', '无锡', '联通130卡'),
(39, '1300038', '0510', '江苏', '无锡', '联通130卡'),
(40, '1300039', '0510', '江苏', '无锡', '联通130卡'),
(41, '1300040', '未知', '未知', '未知', '未知'),
(42, '1300041', '未知', '未知', '未知', '未知'),
(43, '1300042', '未知', '未知', '未知', '未知'),
(44, '1300043', '未知', '未知', '未知', '未知'),
(45, '1300044', '未知', '未知', '未知', '未知'),
(46, '1300045', '010', '北京', '北京', '联通130卡'),
(47, '1300046', '010', '北京', '北京', '联通130卡'),
(48, '1300047', '010', '北京', '北京', '联通130卡'),
(49, '1300048', '010', '北京', '北京', '联通130卡'),
(50, '1300049', '010', '北京', '北京', '联通130卡'),
(51, '1300050', '020', '广东', '广州', '联通130卡'),
(52, '1300051', '020', '广东', '广州', '联通130卡'),
(53, '1300052', '020', '广东', '广州', '联通130卡'),
(54, '1300053', '020', '广东', '广州', '联通130卡'),
(55, '1300054', '020', '广东', '广州', '联通130卡'),
(56, '1300055', '020', '广东', '广州', '联通130卡'),
(57, '1300056', '020', '广东', '广州', '联通130卡'),
(58, '1300057', '020', '广东', '广州', '联通130卡'),
(59, '1300058', '020', '广东', '广州', '联通130卡'),
(60, '1300059', '020', '广东', '广州', '联通130卡'),
(61, '1300060', '未知', '未知', '未知', '未知'),
(62, '1300061', '0724', '湖北', '荆门', '联通130卡'),
(63, '1300062', '未知', '未知', '未知', '未知'),
find和findstr的更多相关文章
- [转]FINDSTR正则表达式小结
前言:最近写了一个bat用于快速编译swf至目标目录,想利用FINDSTR命令通过匹配目标目录名称,匹配数量大概600多个,发现匹配耗时比较久,大概花费10余秒,因此还是放弃字符匹配,乖乖拼出全称来定 ...
- findstr 命令
body { font-family: Bitstream Vera Sans Mono; font-size: 11pt; line-height: 1.5; } html, body { colo ...
- matlab中findstr,strfind,strcmp,strncmp区别与联系
在Matlab中,这几个函数区分如下: (以下默认S1和S2是字符串,同样也适用于cell细胞类型数据,也就是循环对cell中每个元素分别判断即可.) findstr(S1,S2):寻找是否有S1和S ...
- findstr()与strfind()的区别
matlab中这两个字符串查找的函数findstr(), strfind()表明上看起来用法相似,效果也相似. 1. findstr(s1,s2)--在较长的字符串中查找较短的字符串出现的次数,并返回 ...
- netstat -aon|findstr 8888 终止进程
netstat -aon|findstr 8888 # 根据端口号查找进程C:\Users\Administrator>netstat -ano | findstr TCP LISTENING ...
- 入门命令13-字符串查找增强:findstr
http://www.cnblogs.com/doupip/archive/2011/12/23/2299210.html 在文件中寻找字符串. FINDSTR [/B] [/E] [/L] [/R] ...
- 批处理 Mysql Findstr
@set Dump_IP=localhost @set User_Name=root @set Password=1234 @set curPath=%~dp0 mysql -h %Dump_IP% ...
- 【CMD】findstr命令
findstr用来搜索匹配字符串的文件. FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file] [ ...
- 批处理find&findstr命令--众里寻他一次度
find 使用 Command: find [/v][/c][/n][/i] "string" [[drive:][path]filename] Parameter: /v 显示所 ...
随机推荐
- C++ IO 详细用法
http://www.cnblogs.com/keam37/ keam所有 转载请注明出处 本文将分别从<iostream>,<sstream>,<fstream> ...
- OpenJudge / Poj 2141 Message Decowding
1.链接地址: http://poj.org/problem?id=2141 http://bailian.openjudge.cn/practice/2141/ 2.题目: Message Deco ...
- 第8条:覆盖equals时遵守通用约定
如果不需要覆盖equals方法,那么就无需担心覆盖equals方法导致的错误. 什么时候不需要覆盖equals方法? 1.类的每个实例本质上是唯一的. 例如对于Thread,Object提供的equa ...
- 模板方法模式(Template Pattern)
模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中.模板方法使得子类可以在不改变算法的结构下,重新定义算法中的某些步骤. 这个模式是用来创建一个算法模板.模板就是一个方法.更具体地 ...
- 基本上,把switch,用设计模式代替,肯定是bug和过度设计。想想,本来修改一个文件几行代码可以解决的问题,变成修改3-6个类才能实现一样的功能。不是傻是什么?
那些迷信设计模式的人,来修改一下这个方法吧.看看你最终的代码膨胀为几倍... public virtual PasswordChangeResult ChangePassword(ChangePass ...
- JS中undefined和null的区别
在写JS脚本的时候,经常会碰到“为空”的判断,其中主要有null和undefined的判断.这两个为空判断的主要区别是: 1) null是JS的关键字,是语法特性.undefined是全局对象的属性, ...
- QtSQL学习笔记(1)- 概述
Qt SQL是Qt提供的核心模块,用以支持SQL数据库.Qt SQL的API被分为不同的层: ■ 驱动层 (Driver layer) ■ API层 (SQL API layer) ■ 用户接口层 ( ...
- Chocolatey:Windows软件包管理器
Chocolatey 2016-08-03 https://chocolatey.org/ Chocolatey是一个Windows软件包管理器,就像Nuget或者npm,或者说类似Linux上的ap ...
- Web前端新人笔记之CSS字体
本章内容是阅读CSS权威指南的一个小积累和随笔.新人必看,老鸟也可查看并指出不足指出以便后人阅读更好地理解.O(∩_∩)O谢谢!!!设置字体属性时样式变的最常见的用途之一:不过,尽管字体选择很重要,但 ...
- svn执行clean up 操作时报错 "Previous operation has not finished; run 'cleanup' if it was interrupted"解决如下!
今天在项目中更新的时候,突然间爆了一个svn的这个错误,当时提示我去clean up操作,结果我执行clean up操作时候,还是报错,后来坚持出来,是因为ios项目中的一个图标出了问题,使svn进入 ...