欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

怎么用bat過濾任意字符-創(chuàng)新互聯(lián)

這篇文章主要講解了“怎么用bat過濾任意字符”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么用bat過濾任意字符”吧!

成都創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、格爾木網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站定制開發(fā)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為格爾木等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。



早在寫 bat的一個小游戲猜數(shù)字的時候我就研究過這個問題 如何在bat里面實現(xiàn) 對輸入的任意字符進行過濾 當(dāng)時使用的幾種方法如下
Codz: 
if "%1"=="要過濾的字符" echo 你輸入的是非法字符 
例: if "%1"=="wrongpassword" echo 錯誤口令 

set errorlevel=0 
echo 要過濾的字符|find "要過濾的字符" 
if "%errorlevel%"=="0" echo 你輸入的是是非法字符 
if "%errorlevel%"=="1" echo 該字符串不在非法列表中



主要是使用這兩種方法 這兩種方法可以過濾數(shù)字 和 英文字母 但是 對 特殊字符 不起作用

當(dāng)要過濾【_+|-=\[]{};':,./">~`!@#$%^&*()_+|-=\[]{};':,./<>? 】(包含空格和tab鍵值)的時候 我們要這樣

Codz: 
echo "anyword"|find "anywrod"

注意到有什么不同了嗎 是的 我們加入了""來包含anyword 可是過濾到此并沒完成 發(fā)現(xiàn)上面要過濾的字符 少了什么嗎 是的 少了" 字符本身 遺憾的是 這種方法 無法完美的過濾"字符本身 當(dāng)" 取值 為奇數(shù) 和 偶數(shù)的 時候 用find對她進行 過濾 隨條件 不同可能會報錯

這個問題 困擾了 我半年之久 曾在安焦上 問了一下 沒人回答 

事實上要過濾它 并不是那么的簡單 我們先寫幾個驗證密碼的小程序 看看在不同情況下程序的反應(yīng)

我們先寫一個驗證密碼登錄的小程序

注:當(dāng)密碼驗證字符為ph5nt0m的時候 授權(quán)登錄

Codz: 
@echo off 
cls 
:allyesno 
set errorlevel=>nul 
echo 請輸入登錄口令 
set/p password= 
echo "%password%"|findstr "ph5nt0m" 
if "%errorlevel%"=="0" echo 口令正確&goto end 
echo 口令錯誤&goto allyesno 
:end 
echo 你成功登錄系統(tǒng)

將bat保存為key.bat執(zhí)行

執(zhí)行結(jié)果

Codz: 
C:test>key 
請輸入登錄口令 
test 
口令錯誤 
請輸入登錄口令 
ph5nt0m 
"ph5nt0m" 
口令正確 
你成功登錄系統(tǒng)


事實 上 上面的代碼用來進行一般的口令驗證已經(jīng)足夠了 但是 要達到我們的目的 任意字符過濾還不行
我們換個方式執(zhí)行看看

執(zhí)行結(jié)果
Codz: 
C:test>key 
請輸入登錄口令 
test 
口令錯誤 
請輸入登錄口令 

"""|findstr "ph5nt0m" 
口令錯誤 
請輸入登錄口令 
ph5nt0m 
"ph5nt0m" 
口令正確 
你成功登錄系統(tǒng)


看見了嗎 當(dāng)我們輸入" 字符的時候 程序報錯了 并顯示了密碼 為什么會這樣呢? 我們再看這個語句的語法結(jié)構(gòu) echo "%password%"|findstr "ph5nt0m" 當(dāng)%password%="的時候 就是echo """|findstr "ph5nt0m"

之所以會如此 跟echo的特性有關(guān) 我們看下面幾個語句

Codz: 
I:>echo "|cd 
"|cd 

I:>echo ""|cd 
I: 

I:>echo """|cd 
"""|cd 

I:>echo """"|cd 
I:


當(dāng)"為奇數(shù)的時候 則打印整行 當(dāng)"為偶數(shù)的時候則 執(zhí)行 | 字符后面的命令 上面程序執(zhí)行的命令是cd

這里我想了一個辦法繞過echo的報錯特性 我用set代替了echo 程序如下

Codz: 
@echo off 
cls 
:allyesno 
set errorlevel=>nul 
echo 請輸入登錄口令 
set/p password= 
set |findstr "ph5nt0m" 
if "%errorlevel%"=="0" echo 口令正確&goto end 
echo 口令錯誤&goto allyesno 
:end 
echo 你成功登錄系統(tǒng)


執(zhí)行結(jié)果如下

Codz: 
請輸入登錄口令 
test 
口令錯誤 
請輸入登錄口令 

口令錯誤 
請輸入登錄口令 
ph5nt0m 
password=ph5nt0m 
口令正確 
你成功登錄系統(tǒng) 

C:\test>


程序進一步的完美了

但是還是有問題D 我們再來看 換一種方式執(zhí)行

Codz: 
請輸入登錄口令 
test 
口令錯誤 
請輸入登錄口令 
ph5nt0mallyesno 
password=ph5nt0mallyesno 
口令正確 
你成功登錄系統(tǒng) 

C:test>


由于程序的驗證方式是 set |findstr "ph5nt0m" 所以只要包含ph5nt0m字符的 密碼 都被當(dāng)成正確密碼 所以密碼ph5nt0mallyesno 也通過了

為了避免這個問題 我設(shè)置了 匹配參數(shù)\<\> 對數(shù)據(jù)進行檢驗 修改后的程序 如下

Codz: 
@echo off 
cls 
:allyesno 
set errorlevel=>nul 
echo 請輸入登錄口令 
set/p password= 
set |findstr "\<ph5nt0m\>" 
if "%errorlevel%"=="0" echo 口令正確&goto end 
echo 口令錯誤&goto allyesno 
:end 
echo 你成功登錄系統(tǒng)


執(zhí)行結(jié)果

Codz: 
請輸入登錄口令 
test 
口令錯誤 
請輸入登錄口令 
ph5nt0mallyesno 
口令錯誤 
請輸入登錄口令 
ph5nt0m 
password=ph5nt0m 
口令正確 
你成功登錄系統(tǒng) 

C:test>


最后再將程序 修整 如下 

Codz: 
@echo off 
cls 
:allyesno 
set errorlevel=>nul 
echo 請輸入登錄口令 
set/p password= 
rem 如果密碼字符串包含此行任一字符_+|-=[]{};':,./">~`!@#$%^&*()_+|-=[]{};':,./<>? 則必須使用匹配模式<> 
rem 需要雙寫的字符 
rem 不可以作為密碼的字符 " 
set password|findstr "\<ph5nt0m\>" 
if "%errorlevel%"=="0" echo 口令正確&goto end 
echo 口令錯誤&goto allyesno 
:end 
set password=>nul 
echo 你成功登錄系統(tǒng)


注:當(dāng)密碼字符串中有字符\的時候 需要將字符雙寫\\ 
例 set password|findstr "\<\\\>"
登錄的時候 只需要寫一次\不需要雙寫

" 字符 不可以作為密碼字符串 如果密碼字符串包含此行任一字符_+|-=[]{};':,./">~`!@#$%^&*()_+|-=[]{};':,./<>? 則必須使用匹配模式\<\>


感謝各位的閱讀,以上就是“怎么用bat過濾任意字符”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么用bat過濾任意字符這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

分享題目:怎么用bat過濾任意字符-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://aaarwkj.com/article34/ccdcpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、搜索引擎優(yōu)化、Google、企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司
十八禁在线观看网址免费| 三级国产大片在线观看| 最新手机免费黄色av网站| 亚洲国产欧美日韩国产| 蜜臀综合亚洲国产精品| 极品人妻视频中文字幕| 久久综合久久狠狠激情| 在线看电影亚洲一区| 亚洲熟妇av一区二区| 尤物天堂av一区二区| 禁止18观看视频软件| 亚洲综合国产中文字幕| 人妻勾引中文字幕在线视频| 粉嫩在线一区二区懂色| 欧美亚洲av一区二区三区| 日本一区二区精美视频| 日本一区二区三区中文字幕不卡| 男人自拍天堂在线观看| 日韩av亚洲一区二区三区| 日本又色又爽又黄的观看| 日本啪啪精品一区二区三区| 久久综合中文字幕一区| 亚洲一区二区三区女同| 国产熟女一区二区精品视频| 国产剧情av一区在线观看| 欧美高清一区二区三区精品| 亚洲精品尤物福利视频| 国产一级r内射视频播放| 中文字幕二区三区av| 欧美日韩精品福利一区二区| 国产av白浆一区二区色爽黄| 色综合色综合蘑菇在线| 青青草原高清在线观看| 免费观看久久黄色大片| 国产又大又爽免费视频| 日本人妻中文字幕在线一区| 高清欧美大片免费观看| 日韩性生活视频免费播放| 亚洲男人的av天堂生活| 国产99久久精品免费看| 性生活免费在线观看视频|