這類替換最好不好使用正則表達式,因為你搜索的內容的唯一的無需使用正在,而且替換的文本較大正則效率太低。
10多年專注建站、設計、互聯網產品按需求定制制作服務,業務涵蓋成都品牌網站建設、成都做商城網站、微信小程序、軟件系統開發、app開發定制等。憑借多年豐富的經驗,我們會仔細了解每個客戶的需求而做出多方面的分析、設計、整合,為客戶設計出具風格及創意性的商業解決方案,成都創新互聯更提供一系列網站制作和網站推廣的服務,以推動各中小企業全面信息數字化,并利用創新技術幫助各行業提升企業形象和運營效率。
方法是找到這兩個特殊字符串的位置,然后使用substr刪除中間部分,例子代碼:
$str='....你要處理的字符串.....';
$s1='...開始字符串...';
$s2='...結束字符串...';
$i1=strpos($str,$s1);//開始位置
$i2=strpos($str,$s2);//結束位置
if
($i1!==false
$i2!==false)//找到
$str=substr($str,0,$i1-1)
.
substr($str,$i2+strlen($s2));
純sql的話,應該實現不了,相似的這個應該還是PHP來處理的,排第三的都沒有相似的內容了,也要顯示。那就是所有的數據,然后再foreach來做對比判斷,我覺得可以將字符串分為數組,然后對比兩個數組的交集個數,再按交集的個數來排序
復制PHP手冊上的解釋:
strcmp — 二進制安全字符串比較
說明
int strcmp ( string $str1 , string $str2 )
注意該比較區分大小寫。
參數
str1
第一個字符串。
str2
第二個字符串。
返回值
如果 str1 小于 str2,返回負數;如果 str1 大于 str2,返回正數;二者相等則返回 0。