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 c3 456 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}"; /* //Output 123 abc c1 c2 c3 456 def d1 d2 d3 */ <br><font color="#e78608">------解决方案--------------------</font><br>
------解决方案--------------------
行多倒不怕,上面代码稍做修改就可以适应不定行数据。
------解决方案--------------------
- PHP code
$str = '123[test] abc c1 c2 c3 456 def d1[test] d2 d3 789 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}"; /* //Output 123 abc c1 c2 c3 456 def d1 d2 d3 789 ghi z1 z2 z3 */ <br><font color="#e78608">------解决方案--------------------</font><br>晕。。我只要看到正则就会觉得头大。。<br>
- PHP code
$str = '123[test] abc c1 c2 c3 456 def d1[test] d2 d3 789 ghi[sfjsldf] z1 z2 z3'; $str = preg_replace('/\[.*\]/','',$str); echo "<pre class="brush:php;toolbar:false">{$str}"; /* //Output 123 abc c1 c2 c3 456 def d1 d2 d3 789 ghi z1 z2 z3 */ <div class="clear"> </div>

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增強codemodocultion,可驗證性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

選擇DependencyInjection(DI)用於大型應用,ServiceLocator適合小型項目或原型。 1)DI通過構造函數注入依賴,提高代碼的測試性和模塊化。 2)ServiceLocator通過中心註冊獲取服務,方便但可能導致代碼耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)啟用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替換loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化進行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)

tomakephpapplicationsfaster,關注台詞:1)useopcodeCachingLikeLikeLikeLikeLikePachetoStorePreciledScompiledScriptbyTecode.2)MinimimiedAtabaseSqueriSegrieSqueriSegeriSybysequeryCachingandeffeftExting.3)Leveragephp7 leveragephp7 leveragephp7 leveragephpphp7功能forbettercodeefficy.4)

到ImprovephPapplicationspeed,關注台詞:1)啟用opcodeCachingwithapCutoredUcescriptexecutiontime.2)實現databasequerycachingingusingpdotominiminimizedatabasehits.3)usehttp/2tomultiplexrequlexrequestsandreduceconnection.4 limitesclection.4.4

依赖注入(DI)通过显式传递依赖关系,显著提升了PHP代码的可测试性。1)DI解耦类与具体实现,使测试和维护更灵活。2)三种类型中,构造函数注入明确表达依赖,保持状态一致。3)使用DI容器管理复杂依赖,提升代码质量和开发效率。

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境