簡體   English   中英

php - 正則表達式以匹配以某些開頭的內容

[英]php - Regular Expression to match someting that starts with

我非常抱歉,但陣列看起來像這樣:

Array
(
[1] => Array
    (
        [0] => msie6.0
        [1] => 7
    )

[2] => Array
    (
        [0] => safari5.0.3
        [1] => 5
    )

[3] => Array
    (
        [0] => chrome18.0.1025.308
        [1] => 1
    )

[4] => Array
    (
        [0] => firefox20.0
        [1] => 4
    )
[5] => Array
    (
        [0] => msie7.0
        [1] => 915
    )

等等...當我嘗試用InternetExplorer替換例如msie6.0msie7.0並添加它出現時:

preg_match("/#^msie(.*)$#i/is", $results, $matches);
$test = $matches[0] ;
print_array($test);
$results["#^startText(.*)$#i"] = $results['InternetExplorer'];
print_array($results);
unset($results["/#^msie(.*)$#i/is]);

它不符合我想要的完美。 任何解決方案? 為了有 :

Array
(
[1] => Array
    (
        [0] => InternetExplorer
        [1] => 922
    )

[2] => Array
    (
        [0] => safari5.0.3
        [1] => 5
    )

[3] => Array
    (
        [0] => chrome18.0.1025.308
        [1] => 1
    )

[4] => Array
    (
        [0] => firefox20.0
        [1] => 4
    )

在您澄清評論之后。 我認為你不需要正則表達式, strpos就足夠了。

$rows["InternetExplorer"] = 0;
foreach($rows as $key => $value){
  if(strpos($key,"msie") !== false){
     $rows["InternetExplorer"] += $value;
     unset($rows[$key]);
  }
}

演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM