Re: [問題] 想請問有辦法做到這樣嗎?

看板RegExp (正規表示式 Regular Expression)作者 (System hacked)時間17年前 (2008/02/21 20:36), 編輯推噓7(7010)
留言17則, 6人參與, 最新討論串2/2 (看更多)
※ 引述《taro3750 (taro)》之銘言: : 如果我想建立0rz.tw的連結 : 能否偵測5個英數字元(含大小寫) : 排除全部只有數字或全部只有英文的狀況 : 並且確保該5個英數字元必定包含英文與數字 : 請問這樣能否用正規式表達? : 新手發問 請多包涵^^" Perl compatible: ^http://0rz\.tw/[0-9a-z]{5}$ POSIX compatible: ^http://0rz\.tw/[0-9a-z][0-9a-z][0-9a-z][0-9a-z][0-9a-z]{5}$ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.54.119

02/22 05:52, , 1F
似乎不太對@@" 這樣既不能包含大小寫 也不能排除全都是數
02/22 05:52, 1F

02/22 05:53, , 2F
字或英文
02/22 05:53, 2F

02/22 06:04, , 3F
而且我是想從2aO3F這種字串鍊結化成http://0rz.rw/2a03F
02/22 06:04, 3F

02/22 10:18, , 4F
/.*[A-Za-z][0-9].*|.*[0-9][A-Za-z].*/ 未限制長度...
02/22 10:18, 4F

02/22 22:04, , 5F
先比有5數字英文 在排除全部數字跟全部英文
02/22 22:04, 5F

02/23 17:38, , 6F
先用產生1~4的亂數i,這個長度i配給數字,(5-i)長度給英文
02/23 17:38, 6F

02/23 20:48, , 7F
產生前四碼用隨機,檢查這四碼都是英文或數字的時候
02/23 20:48, 7F

02/23 20:49, , 8F
第五碼再加上跟前四碼不同的 英或數 這樣如何
02/23 20:49, 8F

02/24 08:47, , 9F
其實0rz的連結可能會有全數字的喔XD
02/24 08:47, 9F

02/24 08:48, , 10F
不過看你的需求是要抓出那五個字來的意思吧?
02/24 08:48, 10F

02/24 08:48, , 11F
[^0-9A-Za-z]([0-9A-Za-z]{5})[^0-9A-Za-z] 再取\1就有了
02/24 08:48, 11F

02/24 08:49, , 12F
原理是利用前後兩個[^...]來去掉更長的字串
02/24 08:49, 12F

02/24 08:50, , 13F
不過這樣沒有排除全英文的...要再想想 @@
02/24 08:50, 13F

02/24 08:50, , 14F
應該中間改([0-9]{5}|[A-Za-z][0-9A-Za-z]{4}|...)排列組合
02/24 08:50, 14F

02/24 08:51, , 15F
就可以了吧@_@
02/24 08:51, 15F

02/24 19:01, , 16F
是喔囧 沒看過全都數字的情況說 感謝樓上提供的意見
02/24 19:01, 16F

02/24 19:01, , 17F
先來試試看@@
02/24 19:01, 17F
文章代碼(AID): #17lN0yvS (RegExp)
討論串 (同標題文章)
文章代碼(AID): #17lN0yvS (RegExp)