首頁 後端開發 php教程 php正则表达式具体的,真头大了。该怎么解决

php正则表达式具体的,真头大了。该怎么解决

Jun 13, 2016 am 10:36 AM
ar quot replace str test

php正则表达式具体的,真头大了。。。
提取以下两行数据 
123[test] abc c1 c2 c3 
456 def d1[test] d2 d3 
以换行和空格为分割
要求提取到
123,abc,c1 c2 c3
456,def,d1 d2 d3
数据中间可能还有[*]要忽略
求preg_match_all匹配表达式

------解决方案--------------------
要preg_match_all还是preg_replace?
那些逗号是怎么回事?后面的三个为何又没有逗号?
------解决方案--------------------
正则,不会。。

PHP code
$str = '123[test] abc c1 c2 c3456 def d1[test] d2 d3';$ar = split("[\n\r]+",$str);$ar1 = explode(' ',$ar[0]);$ar2 = explode(' ',$ar[1]);function fmt($ar) {   foreach($ar as $k => $v) $ar[$k] = preg_replace('/\[.*\]/','',$v);   return $ar;}$ar1 = fmt($ar1);$ar2 = fmt($ar2);$str = implode(' ',$ar1)."\n".implode(' ',$ar2);echo "<pre class="brush:php;toolbar:false">{$str}";/*//Output123 abc c1 c2 c3456 def d1 d2 d3*/<br><font color="#e78608">------解决方案--------------------</font><br>
登入後複製
探讨

不可能不会吧,这个里面就用到了下正则表达式呀
preg_replace('/\[.*\]/','',$v);
因为行数会很多,想有效率而表达简单一点解决!

------解决方案--------------------
行多倒不怕,上面代码稍做修改就可以适应不定行数据。
------解决方案--------------------
PHP code
$str = '123[test] abc c1 c2 c3456 def d1[test] d2 d3789 ghi[sfjsldf] z1 z2 z3';$ar = split("[\n\r]+",$str);$arTMP = array();foreach($ar as $v) $arTMP[] = explode(' ',$v);function fmt($ar) {   foreach($ar as $k => $v) $ar[$k] = preg_replace('/\[.*\]/','',$v);   return $ar;}foreach($arTMP as $k => $v) $arTMP[$k] = implode(' ',fmt($v));$str = implode("\n",$arTMP);echo "<pre class="brush:php;toolbar:false">{$str}";/*//Output123 abc c1 c2 c3456 def d1 d2 d3789 ghi z1 z2 z3*/<br><font color="#e78608">------解决方案--------------------</font><br>晕。。我只要看到正则就会觉得头大。。<br>
登入後複製
PHP code
$str = '123[test] abc c1 c2 c3456 def d1[test] d2 d3789 ghi[sfjsldf] z1 z2 z3';$str = preg_replace('/\[.*\]/','',$str);echo "<pre class="brush:php;toolbar:false">{$str}";/*//Output123 abc c1 c2 c3456 def d1 d2 d3789 ghi z1 z2 z3*/<div class="clear">
                 
              
              
        
            </div>
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
威爾R.E.P.O.有交叉遊戲嗎?
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

華為Watch GT 5智慧手錶獲得新功能更新 華為Watch GT 5智慧手錶獲得新功能更新 Oct 03, 2024 am 06:25 AM

華為正在全球推出Watch GT 5和Watch GT 5 Pro智慧手錶的軟體版本5.0.0.100(C00M01)。這兩款智慧手錶最近在歐洲推出,標準型號是該公司最便宜的型號。這和諧

鐵拳桑德斯上校的夢想被肯德基炸了 鐵拳桑德斯上校的夢想被肯德基炸了 Oct 02, 2024 am 06:07 AM

《鐵拳》系列總監原田勝宏曾認真嘗試將桑德斯上校帶入這款標誌性格鬥遊戲中。在接受 TheGamer 採訪時,原田透露,他向日本肯德基提出了這個想法,希望將這位快餐傳奇人物納入其中。

Cyber​​truck FSD 評論稱讚快速車道切換和全螢幕視覺化 Cyber​​truck FSD 評論稱讚快速車道切換和全螢幕視覺化 Oct 01, 2024 am 06:16 AM

特斯拉正在推出最新的全自動駕駛(監督)版本12.5.5,並最終帶來了承諾的Cyber​​truck FSD 選項,距離皮卡上市十個月後,該功能包含在基礎系列的裝飾價格中。 F

第一眼:即將推出的 Anker Zolo 4 連接埠 140W 帶顯示壁式充電器的拆箱視訊洩露 第一眼:即將推出的 Anker Zolo 4 連接埠 140W 帶顯示壁式充電器的拆箱視訊洩露 Oct 01, 2024 am 06:32 AM

2024 年 9 月早些時候,Anker 的 Zolo 140W 充電器被洩露,這是該公司首款帶有顯示器的壁式充電器,這引起了轟動。現在,小李TV在YouTube上發布的新開箱影片讓我們親眼目睹了這款hi

搭載 HyperOS 的新款小米米家石墨烯油汀到貨 搭載 HyperOS 的新款小米米家石墨烯油汀到貨 Oct 02, 2024 pm 09:02 PM

小米即將在中國推出米家石墨烯油汀暖爐。該公司最近在其優品平台上成功舉辦了一次智慧家居產品眾籌活動。根據頁面顯示,該設備已開始出貨至

Garmin 透過新的更新發布了針對多款智慧手錶的冒險賽車活動改進 Garmin 透過新的更新發布了針對多款智慧手錶的冒險賽車活動改進 Oct 01, 2024 am 06:40 AM

Garmin 將於本月底為其最新的高階智慧手錶提供一組新的穩定更新。回顧一下,該公司發布了系統軟體 11.64,以解決 Enduro 3、Fenix E 和 Fenix 8 的高電池消耗問題(亞馬遜售價 1,099.99 美元)。

三星 Galaxy Z Fold 特別版透露將於 10 月底登陸,但名稱出現衝突 三星 Galaxy Z Fold 特別版透露將於 10 月底登陸,但名稱出現衝突 Oct 01, 2024 am 06:21 AM

三星期待已久的「特別版」可折疊手機的推出又迎來了另一個轉折。最近幾週,有關所謂 Galaxy Z Fold 特別版的傳言相當安靜。相反,焦點已轉移到 Galaxy S25 系列,包括

Manjaro 24.1「Xahea」與 KDE Plasma 6.1.5、VirtualBox 7.1 等一起發布 Manjaro 24.1「Xahea」與 KDE Plasma 6.1.5、VirtualBox 7.1 等一起發布 Oct 02, 2024 am 06:06 AM

Manjaro 已有十多年的歷史,被認為是最用戶友好的 Linux 發行版之一,適合初學者和高級用戶,易於安裝和使用。這個基於 Arch 的發行版主要在奧地利、德國和法國開發

See all articles