//替换ml
$goods_desc = $v['goods_desc'];
preg_match_all("/[0-9]mL/i",$goods_desc,$ar);
//替换ml
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]mL)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);


}

//替换mm
unset($ar);
preg_match_all("/[0-9]mpa/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]mpa)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

}


//替换mm
unset($ar);
preg_match_all("/[0-9]mm/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]mm)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

} //替换kg
unset($ar);
preg_match_all("/[0-9]kg/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]kg)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

}

//替换kg
unset($ar);
preg_match_all("/[0-9]g/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]g)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

}




//替换cm
unset($ar);
preg_match_all("/[0-9]cm/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]cm)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

}

//替换rpm
unset($ar);
preg_match_all("/[0-9]rpm/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]rpm)(.*)/ei", "'\\1'.strtolower('\\2').'<br>\\3'",$goods_desc);

}

//替换°C
unset($ar);
preg_match_all("/[0-9]°C|&#176;C/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]°C|&#176;C)(.*)/ei", "'\\1\\2<br>\\3'",$goods_desc);

}


//替换W
unset($ar);
preg_match_all("/[0-9]W/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]W)(.*)/ei", "'\\1\\2<br>\\3'",$goods_desc);

}



//替换L
unset($ar);
preg_match_all("/[0-9]L/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]L)(.*)/ei", "'\\1\\2<br>\\3'",$goods_desc);

}


//替换V
unset($ar);
preg_match_all("/[0-9]V/i",$goods_desc,$ar);
foreach($ar[0] as $v){
$goods_desc =  preg_replace ("/(.*)([0-9]V)(.*)/ei", "'\\1\\2<br>\\3'",$goods_desc);

}





//替换大写开头
unset($ar);
preg_match_all("/[a-z]+[A-Z]/",$goods_desc,$ar);

foreach($ar[0] as $v){

$goods_desc =  preg_replace ("/(.*)([a-z]+[A-Z])(.*)/e", "'\\1'.substr('\\2',0,1).'<br>'.substr('\\2',1,1).'\\3'",$goods_desc);

}




//替换大写开头
unset($ar);
preg_match_all("/[0-9]+[A-Z]/",$goods_desc,$ar);

foreach($ar[0] as $v){

$goods_desc =  preg_replace ("/(.*)([0-9]+[A-Z])(.*)/e", "'\\1\\2<br>\\3'",$goods_desc);

}








//替换大写开头
unset($ar);
preg_match_all("/\)[A-Z]/",$goods_desc,$ar);

foreach($ar[0] as $v){

$goods_desc =  preg_replace ("/(.*)(\)[A-Z])(.*)/e", "'\\1'.substr('\\2',0,1).'<br>'.substr('\\2',1,1).'\\3'",$goods_desc);

}

解决方案 »

  1.   

    做错了事,把<br>全去掉了。。用正则找回正常的br.
      

  2.   

    这不就是以前php帮助文件文档里改了一下而已!哎!这东西也拿出来眩!
      

  3.   

    你还不知道Discuz的模板引擎全部是正则表达式写的吧?

    //parse
    $var_regexp = "((\\\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)(\[[a-zA-Z0-9_\-\.\"\'\[\]\$\x7f-\xff]+\])*)";
    $const_regexp = "([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)";

    $template = preg_replace("/([\n\r]+)\t+/s", "\\1", $template);
    $template = preg_replace("/\<\!\-\-\{(.+?)\}\-\-\>/s", "{\\1}", $template);
    $template = preg_replace("/\{lang\s+(.+?)\}/ies", "languagevar('\\1')", $template);
    $template = str_replace("{LF}", "<?=\"\\n\"?>", $template); $template = preg_replace("/(\\\$[a-zA-Z0-9_\[\]\'\"\$\x7f-\xff]+)\.([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)/s", "\\1['\\2']", $template);
    $template = preg_replace("/\{(\\\$[a-zA-Z0-9_\[\]\'\"\$\.\x7f-\xff]+)\}/s", "<?=\\1?>", $template);
    $template = preg_replace("/\{(\\\$[a-zA-Z0-9_\[\]\'\"\$\.\x7f-\xff]+)\}/s", "<?=\\1?>", $template);
    $template = preg_replace("/$var_regexp/es", "addquote('<?=\\1?>')", $template);
    $template = preg_replace("/\<\?\=\<\?\=$var_regexp\?\>\?\>/es", "addquote('<?=\\1?>')", $template); $template = preg_replace("/[\n\r\t]*\{block\s+name=\"(.+?)\"\s+parameter=\"(.+?)\"\}[\n\r\t]*/ies", "blocktags('\\1', '\\2')", $template);
    $template = preg_replace("/[\n\r\t]*\#date\((.+?)\)\#[\n\r\t]*/ies", "striptagquotes('<?php sdate(\\1); ?>')", $template);
    $template = preg_replace("/[\n\r\t]*\#getad\((.+?)\)\#[\n\r\t]*/ies", "striptagquotes('<?php echo getad(\\1); ?>')", $template);
    $template = preg_replace("/[\n\r\t]*\#(uid|action)(.+?)\#[\n\r\t]*/ies", "striptagquotes('<?php echo geturl(\"\\1\\2\"); ?>')", $template); $template = ltrim($template);
    $template = preg_replace("/[\n\r\t]*\{template\s+([a-z0-9_]+)\}[\n\r\t]*/is", "\n<?php include template('\\1'); ?>\n", $template);
    $template = preg_replace("/[\n\r\t]*\{template\s+(.+?)\}[\n\r\t]*/is", "\n<?php include template(\\1); ?>\n", $template);
    $template = preg_replace("/[\n\r\t]*\{eval\s+(.+?)\}[\n\r\t]*/ies", "stripvtags('<?php \\1; ?>','')", $template);
    $template = preg_replace("/[\n\r\t]*\{echo\s+(.+?)\}[\n\r\t]*/ies", "stripvtags('\n<?php echo \\1; ?>\n','')", $template);
    $template = preg_replace("/[\n\r\t]*\{elseif\s+(.+?)\}[\n\r\t]*/ies", "stripvtags('\n<?php } elseif(\\1) { ?>\n','')", $template);
    $template = preg_replace("/[\n\r\t]*\{else\}[\n\r\t]*/is", "\n<?php } else { ?>\n", $template); for($i = 0; $i < 5; $i++) {
    $template = preg_replace("/[\n\r\t]*\{loop\s+(\S+)\s+(\S+)\}[\n\r]*(.+?)[\n\r]*\{\/loop\}[\n\r\t]*/ies", "stripvtags('\n<?php if(is_array(\\1)) { foreach(\\1 as \\2) { ?>','\n\\3\n<?php } } ?>\n')", $template);
    $template = preg_replace("/[\n\r\t]*\{loop\s+(\S+)\s+(\S+)\s+(\S+)\}[\n\r\t]*(.+?)[\n\r\t]*\{\/loop\}[\n\r\t]*/ies", "stripvtags('\n<?php if(is_array(\\1)) { foreach(\\1 as \\2 => \\3) { ?>','\n\\4\n<?php } } ?>\n')", $template);
    $template = preg_replace("/[\n\r\t]*\{if\s+(.+?)\}[\n\r]*(.+?)[\n\r]*\{\/if\}[\n\r\t]*/ies", "stripvtags('\n<?php if(\\1) { ?>','\n\\2\n<?php } ?>\n')", $template);
    }
    $template = preg_replace("/\{$const_regexp\}/s", "<?=\\1?>", $template);
    $template = preg_replace("/ \?\>[\n\r]*\<\? /s", " ", $template);