PHP-从没有空格的字符串中解析单词?

时间:2015-09-03 17:43:41

标签: php regex

我的网页有一个变量$ currentPage。这是我当前所在页面的php令牌名称字符串。

示例:用户部分下的所有类别都具有以下名称: uAdminNew,uAdminEdit,等..

我想要一种解析uAdmin的方法,然后确定最后一个单词(New和Edit)是什么,并从那里调用函数。

我的导航系统正在使用这些名称,因此我无法更改名称,或者我会更容易解析。比如添加分隔符。

这只是Regex可以解决的问题,还是我缺少一个更简单的解决方案?如果这是Regex你可以解释或提供一个链接,我将如何使用它来测试特定的字符串列表?我很陌生。

3 个答案:

答案 0 :(得分:2)

例如,所以:

$str = 'uAdminEdit';    
$ar = preg_match('/([A-Z][^A-Z]+$)/', $str, $m);    
echo $m[1]; // Edit

答案 1 :(得分:1)

页面名称是否始终以uAdmin开头?如果是这样,你可以将字符串拆分为" uAdmin"与explode()

$page   = 'uAdminEdit';
echo explode('uAdmin', $page)[1]; //Output: Edit

或者只是删除" uAdmin"与str_replace()

$page   = 'uAdminEdit';
echo str_replace('uAdmin', '', $page); //Output: Edit

答案 2 :(得分:0)

如果您只想在uAdmin之后使用该部分,请使用正则表达式捕获组

preg_match('/uAdmin(.*)/', $sub, $matches);
echo $matches[1]