[問題] 有組文字集合如何比對至少符合的次數

看板RegExp (正規表示式 Regular Expression)作者 (SEASON)時間11年前 (2014/01/02 23:37), 編輯推噓0(0012)
留言12則, 2人參與, 最新討論串1/1
大家好, 想請問一下,如果我有組文字集合像是.. [中,華,民,國] 我想用字串"中國民 假設符合任意3個字元且位置不限即match 中國民 -> "中國民" 中二國 -> "" 不知道該怎麼寫orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.208.115

01/03 00:55, , 1F
是只要找三個字? 可以重複嗎?
01/03 00:55, 1F

01/03 01:04, , 2F
嗯~假設是三個字,多個字也希望可以,如果不能重複呢?
01/03 01:04, 2F

01/03 01:06, , 3F
Ex.中國人民共和國,扣掉重複也有3個符合, 即會抓出來
01/03 01:06, 3F

01/03 01:14, , 4F
vim 的可以像這樣,我用 ABCD 代替
01/03 01:14, 4F

01/03 01:14, , 5F
/\([ABCD]\)\([^\1]\@=[ABCD]\)\([^\1\2]\@=[ABCD]\)
01/03 01:14, 5F

01/03 01:15, , 6F
這剛好三個字 多字就中間在加一下 perl 的話 @= 換成 ?=
01/03 01:15, 6F

01/03 01:17, , 7F
可是 中國人民 就 match 了...如果要最大 match 會很長
01/03 01:17, 7F

01/03 01:35, , 8F
如果您方便的話可以在丟在這嗎?http://rubular.com/
01/03 01:35, 8F

01/03 01:35, , 9F
因為我跑不出來...還是您可以幫我引個思路..十分感謝!
01/03 01:35, 9F

01/03 02:08, , 10F
研究一下 ruby 怎麼寫 Orz
01/03 02:08, 10F

01/03 02:09, , 11F
後面的每一組排除前面 match 的而且要是在那些字組裡
01/03 02:09, 11F

01/03 02:27, , 12F
文章代碼(AID): #1InOUUYT (RegExp)
文章代碼(AID): #1InOUUYT (RegExp)