PHP数组包含0 /

时间:2018-02-13 12:28:07

标签: php preg-grep

嗨我有包含模式的元素数组 $ arr = array(' 0 /',' 0/12 / 3',' 1/2') 我需要有#34; 0 /"我试图使用命令

arr_with_zero_slash = preg_grep(' @ $ [0-9] / $ @',$ arr)

但功能仅适用于1 /,2 /等的模式。这是因为0 /被视为特殊符号,但我不知道如何处理。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我认为这就是你的意思: 使用foreach循环遍历数组$ arr,并取消设置(删除)所有不以#0;' ...开始的元素...

$arr = array ('0/' ,'0/12/3','1/2');
foreach($arr as $key=>$value){
  if(substr($value,0,2)<>"0/"){
    unset($arr[$key]);
  }
}

使用:

$arr = array ('0/' ,'0/12/3','1/2') 

这将是结果:

array(2) { [0]=> string(2) "0/" [1]=> string(6) "0/12/3" }

答案 1 :(得分:1)

如果您想获得以<?php $arr = array ('0/' ,'0/12/3','1/2', '1/0/4'); $arr_with_zero_slash = preg_grep('@^0/@',$arr); print_r($arr_with_zero_slash); 开头的所有元素,请尝试:

Array (
    [0] => 0/
    [1] => 0/12/3
)

这将输出

$

删除了第一个[0-9],因为它是meta-character

0更改为0/,因为您只需要1/而不是2/$等。

删除了第二个0/12/3,因为您还需要render(){ return <Router> <Scene key="root" headerMode={'screen'} > <Scene key="drawer" drawer contentComponent={SideMenu} drawerOpenRoute= 'DrawerOpen' drawerCloseRoute= 'DrawerClose' drawerToggleRoute= 'DrawerToggle' initial={true} hideNavBar={true} // drawerWidth={400} > <Scene key="home" component={Home}/> </Scene> <Scene key="screen_1" component={Screen_1} /> </Scene> </Router> }