Re: [請益] preg_match_all 抓有變數的中文句子

看板PHP作者 (亞修)時間13年前 (2010/11/18 10:51), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串4/4 (看更多)
※ 引述《juan19283746 (小阮)》之銘言: : 恩 抱歉可能說的不是很清楚 : 給個例子好了 : 例如說現在 $tmp=跆拳道 : 然後有一段文字 : 年僅17歲的跆拳道女將黃顯詠,在17日的亞運會中一日四戰,連連過關斬將 : ,最終在金牌戰中再以6:3擊敗約旦對手達娜.圖蘭( TOURAN Dana),勇奪女子46kg以 : 下量級金牌,也是本屆亞運我國代表團的第四面金牌。這場金牌戰,雙方在第一回合 : 的攻勢都十分保守,沒有任何的建樹。來到第二回合,把握一次對手圖蘭近身的空檔 : ,黃顯詠起腳下壓掃中對手的頭部,但裁判沒有給分,在場邊的韓國籍教練金洪一立 : 刻高舉右手,遞出紅牌訴請video play,要求重新檢視錄影畫面來做判定。 : 那麼就要抓到含有跆拳道的那一句話 也就是到下一個句點前 : 年僅17歲的*[33m跆拳道*[m女將黃顯詠,在17日的亞運會中一日四戰,連連過關斬將 : ,最終在金牌戰中再以6:3擊敗約旦對手達娜.圖蘭( TOURAN Dana),勇奪女子46kg以 : 下量級金牌,也是本屆亞運我國代表團的第四面金牌。 : 如果有多個跆拳道在不同句子 那就找第一個 : 這樣應該有比較清楚?? 謝謝 我誤會了...我還在想怎麼會有人想要抓變數名稱...原來是我搞錯了>"< ============================================================= 程式: ============================================================= $tmp = '跆拳道'; $str = '年僅17歲的跆拳道女將黃顯詠,在17日的亞運會中一日四戰,連連過關斬將 ,最終在金牌戰中再以6:3擊敗約旦對手達娜.圖蘭( TOURAN Dana),勇奪女子46kg以 下量級金牌,也是本屆亞運我國代表團的第四面金牌。這場金牌戰,雙方在第一回合 的攻勢都十分保守,沒有任何的建樹。來到第二回合,把握一次對手圖蘭近身的空檔 ,黃顯詠起腳下壓掃中對手的頭部,但裁判沒有給分,在場邊的韓國籍教練金洪一立 刻高舉右手,遞出紅牌訴請video play,要求重新檢視錄影畫面來做判定。'; echo '1. '.strmatch($str, $tmp)."\n\n"; # 測試用, 把關鍵字加進去 $str = '這場金牌戰,雙方在第一回合 的攻勢都十分保守,沒有任何的建樹。來到跆拳道第二回合。'; echo '2. '.strmatch($str, $tmp)."\n\n"; # 沒有關鍵字的情況 $str = '來到第二回合,把握一次對手圖蘭近身的空檔 ,黃顯詠起腳下壓掃中對手的頭部,但裁判沒有給分,在場邊的韓國籍教練金洪一立 刻高舉右手,遞出紅牌訴請video play,要求重新檢視錄影畫面來做判定。'; echo '3. '.strmatch($str, $tmp)."\n\n"; function strmatch($str, $tmp){ if(preg_match_all('/[^。]*'.preg_quote($tmp).'[^。]*/u', $str, $matches)){ return $matches[0][0]; }else{ return 'No Match'; } } ============================================================= 結果: ============================================================= 1. 年僅17歲的跆拳道女將黃顯詠,在17日的亞運會中一日四戰,連連過關斬將 ,最終在金牌戰中再以6:3擊敗約旦對手達娜.圖蘭( TOURAN Dana),勇奪女子46kg以 下量級金牌,也是本屆亞運我國代表團的第四面金牌 2. 來到跆拳道第二回合 3. No Match 看一下是不是你需要的... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.24.202.149

11/18 19:20, , 1F
原來有這個涵式可以用 謝謝
11/18 19:20, 1F

11/18 20:18, , 2F
哪個函式呀XDDDDDD
11/18 20:18, 2F

11/19 00:49, , 3F
strmatch阿
11/19 00:49, 3F

11/19 01:32, , 4F
strmatch是g大寫的function ,記得要宣告喔XD
11/19 01:32, 4F

11/19 11:37, , 5F
囧 沒看到 哈哈 我蠢了
11/19 11:37, 5F
文章代碼(AID): #1Cv9JBBS (PHP)
討論串 (同標題文章)
文章代碼(AID): #1Cv9JBBS (PHP)