Re: [問題] 邏輯問題

看板java作者 (骨頭)時間19年前 (2007/02/17 20:12), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串11/11 (看更多)
※ 引述《DavyBlue (ArssertionError)》之銘言: : ※ 引述《zanyking (遙遠的旅人)》之銘言: : : DeBUG完的結果也順便PO一下吧,這樣可以讓討論串更加完整。 : 托你的福 又重寫了一次 : 之前那個貼CODE的網站 連結過沒幾天就爆了 : 好像只能暫時放 : 下面是可以work的完整程式碼 : 如果有人想要結合ArrayList和regex的解法的話我再mail給他 : 寫起來麻煩又長... : Pattern跟Matcher的應用 真是又麻煩又長...(煙) ──────解決問題用───────────────────── //import java.util.regex.*; String word="aaababaaaabbababa"; //Scanner不是重點,不另寫. Pattern p1 = Pattern.compile("(aaa)|(aba)"); Matcher m1 = p1.matcher(word); while(m1.find()){ if(m1.group().matches("aaa")){ System.out.print("0"); }else{ System.out.print("1"); } } System.out.println(); ──彈性較大版───since 1.5.0────────────── //import java.util.regex.*; //import java.util.*; String word="aaababaaaabbababa"; //同上 Scanner(或BufferedReader)不另寫 HashMap<String,String> HM=new HashMap<String,String>(); /*在這裡設立規則*/ HM.put("aaa","0"); HM.put("aba","1"); /*以下不需變動*/ Iterator<String> ir=HM.keySet().iterator(); StringBuffer pattern=new StringBuffer(""); while(ir.hasNext()){ pattern.append(String.format("(%s)",ir.next())); if(ir.hasNext()) pattern.append("|"); } Matcher m1 = Pattern.compile(pattern.toString()).matcher(word); while(m1.find()){ System.out.print(HM.get((m1.group()))); } System.out.println(); -- 黑貓白貓 能抓的到老鼠的就是好貓 ;p -- String temp="relax"; | Life just like programing while(buringlife) String.forgot(temp); | to be right or wrong while(sleeping) brain.setMemoryOut(); | need not to say stack.push(life.running); | the complier will stack.push(scouting.buck()); | answer your life stack.push(bowling.practice()); | Bone everything -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.171.121.11 ※ 編輯: TonyQ 來自: 218.171.121.11 (02/17 20:14) ※ 編輯: TonyQ 來自: 218.171.121.11 (02/17 20:19)
文章代碼(AID): #15rl4quD (java)
討論串 (同標題文章)
文章代碼(AID): #15rl4quD (java)