我有这样的字符串
Ameerpet,|Jeans Corner: 040-50607090@05:45PM/6
想要在@
之后和之前获取子字符串 /
.已尝试以下操作
echo substr($str,strpos($str,'@')+1,strpos($str,'/'))
但是我会在@
之后得到整个字符串
输出05:45PM/6
您可以使用preg_match
$match = preg_match('~@'K[^/]*(?=/)~', $str);
演示
试试这个,
echo substr($str,
strpos($str,'@')+1,
strpos($str,'/') - strpos($str,'@') - 1);
第三个参数不是<位置>,其<长度>长度>位置>
参考这个 : http://php.net/manual/en/function.substr.php
substr 的语法不substr(str , start ,end)
正确的语法是string substr ( string $string , int $start [, int $length ] )
这就是为什么整个东西被打印以实现解决方案的原因,您可以使用@Avinash Raj提供的解决方案。但是,您尝试获取长度为 7 的时间,然后您可以以这种方式使用语法
echo substr($str,strpos($str,'@')+1,7)
谢谢
试试这段代码:
$data = "Ameerpet,|Jeans Corner: 040-50607090@05:45PM/6";
$first = substr($data, strpos($data, "@") + 1);
$splitter = "/";
$pieces = explode($splitter, $first );
echo $pieces[0];
你也可以用substr
来做
$yourString="Ameerpet,|Jeans Corner: 040-50607090@05:45PM/6";
$valueAfterSpecialChar = substr($yourString, strpos($yourString, "@") + 1);
echo $desiredOutput= substr($valueAfterSpecialChar, 0, strpos($valueAfterSpecialChar, "/"));