您好我需要一个正则表达式来从
获取字符串“trkfixo”SIP/trkfixo-000072b6
我试图使用explode
,但我更喜欢正则表达式解决方案。
$ex = explode("/",$sip);
$ex2 = explode("-",$ex[1]);
echo $ex2[0];
答案 0 :(得分:3)
您可以使用'~/([^-]+)~'
:
$re = '~/([^-]+)~';
$str = "SIP/trkfixo-000072b6";
preg_match($re, $str, $match);
echo $match[1]; // => trkfixo
模式详情:
/
- 匹配/
([^-]+)
- 第1组捕获除+
以外的1个或多个(-
)符号(由于[^-]
是否定字符类< / em>匹配此类中所有符号和范围以外的任何符号。)答案 1 :(得分:1)
$match = preg_match('/\/[a-zA-Z]-/', "SIP/trkfixo-000072b6");