$ss="lankii1lankii:55 lankii1lankiilankii3lankii?? lankii4lankiilankii5lankiilankii5lankii【lankii7lankii型号】7010lankii7lankiilankii9lankiilankii10lankiilankii3lankiilankii4lankiilankii5lankiisimhei【颜 色】红、橙、灰lankii7lankiilankii9lankiilankii10lankiilankii3lankiilankii4lankiilankii5lankii【比 例】1:16lankii7lankiilankii9lankiilankii10lankiilankii3lankiilankii4lankiilankii5lankii【适合年龄】5lankiikii4lankiilankii5lankii jewelryself.com【特 点】lankii7lankiilankii9lankiilankii10lankiilankii3lankiilankii4lankiilankii5lankii①按照国际标准原厂1:16比例生产,风向盘遥控。lankii77lankii(注意:此款车不具备重力感应)lankii9lankiilankii7lankiilankii5lankiilankii51lankiilankii5lankii②lankii7lankiilankii7lankiilankii5lankii模型前后车轮均可遥模型收藏者的最爱 适合大人小朋友。lankii7lankiilankii9lankiilankii10lankiilankii3lankiilankii4lankiilankii5lankiilankii112lankiilankii1lankiilankii1lankiilankii115lankiilankii1lankiilankii1lankiilankii118lankiilankii1lankiilankii1lankii1:16仿真名车,三款混装,随机发货。lankii7lankiilankii9lankiilailankii4lankiilankii5lankiilankii127lankiilankii1lankiilankii1lankiilankii130lankiilankii1lankiilankii1lankiilankii133lankiilankii1lankiilankii1lankii遥控器概况,遥控器需要四节5号电池,需要自备。lankii77lankii(此款车不配备重力感应,左右转需要通过扭转风向盘控制)";
//问题长度限制,删除部分
$regx="/[0-9a-z: \?\/r\/n]+/ie";
preg_match_all($regx,$ss,$matches);
print_r($matches[0]); //正常需要提取的字符串;echo str_replace($matches[0],'99',$ss); //替换结果根本不是你想要的结果,我用foreach在 强制(string)下,还是那样的问题,用preg_replace也是这个
,
比如 $matches[0][0]="lankii34543543lsnkiii lsnser23453454535errtrt";
用 str_replace,他是支持数组替换的
清晰点用 foreach 替换,即
foreach( $matches[0] as $m){
$ss=str_replace($m,'99',$ss);
}
正常的情况应该是把含有$matches[0][0]的字符串替换掉了,而实际呢,他只在前2次左右的正常替换,后面程序只替换其中的数字为99。preg_replace也是一样的结果,如果单独,用双引号拿出来替换是正常的,
其中我已经设置了 ini_set('pcre.backtrack_limit', 999999999);所以不存在替换字符串长度问题,编码是UTF-8
---------------------搞定-----------------
a:5:{жно место, где русский хит голоден и электричество