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卡'),