作者dlikeayu (太陽拳vs野球拳)
看板PHP
標題Re: [請益] 關於一個正規表達式的問題
時間Fri Aug 21 05:35:49 2015
※ 引述《mydoc (成為守護神)》之銘言:
: 我看了以前的文章都不是很懂,又怕被罵沒爬文...
: 我現在有一個SQL欄位有如:クランシェ(2段改),GN-XIV(2段改),GAIL戰鬥ヘリ(2段改)
: 我使用了一次$r=explode(',',$row->Enemy_unit1) ;
: 把原字串分割成クランシェ(2段改)
: GN-XIV(2段改)
: GAIL戰鬥ヘリ(2段改)
: 三個陣列元素,
: 然後我想再把"(2段改)"再割掉就不行了......
: 有一些關卡的字串是沒有(2段改)這種的就不會作動作就好
: 我想知道我這時該用哪種函數去割掉"(2段改)"
: PS:早知一開始弄好點SQL結構...
: 先謝謝...
如果只是要清掉2段改
無腦式:
explode(',', implode('', (explode('(2段改)',$row->Enemy_unit1)));
困難式基本式:
UTF-8中英日數字
preg_match('/([\u4e00-\u9fa5\u0800-\u4e00a-zA-Z-0-9\-]+)([^(2段改)])/', $spec);
如果2段改那邊也是動態需被刪除的話,就要比較下功夫了
會用到(?=) (?:) (?!) 等pattern...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.147.58.54
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1440106553.A.D76.html
推 mydoc: 動態的,我是用$a = preg_split("/[(.*)$]/",$str) ;解掉 08/21 08:17
→ mydoc: 不過也謝謝你提供意見~ 08/21 08:18
→ mydoc: 因為每一關的攻略雖然有些敵人血量不一樣,但都有個基本值 08/21 08:19
→ mydoc: 所以我當關記錄的欄位還是要記下有幾段改造 08/21 08:19
→ mydoc: 又因為有多少種類敵人也是每關浮動的所以不應使用一堆欄位 08/21 08:20
→ mydoc: 吧,所以才會記錄成一串後要取用再分割 08/21 08:21
→ dlikeayu: 如果還來的及,no-sql會更適合這個case 08/21 13:37
推 mydoc: 樓上那是什麼? 08/21 17:01
→ MOONRAKER: 是一種資料庫 請google一下 (聽起來很像笑話 其實不是) 08/21 17:12