在php中,如何显示字符串中以某个字符开头并以十六进制字符结尾的部分?

在php中,如何显示字符串中以某个字符开头并以十六进制字符结尾的部分?,php,Php,我只想从下面的字符串中得到40,但它可以更改为任何值,如30、5、2、x、yx。括号中的字符串是常量,但整数是变量。因此,解决方案是删除以“(”开头并以“)”结尾的子字符串,然后回显其他所有内容?如何做到这一点我尝试使用子字符串和strpos,但没有找到完美的解决方案?有人能帮我吗 $string = "40 (In Stock: 1)"; 我试过使用 <?php $stock = "40 (instock: 50)"; $replace_string = substr($stoc

我只想从下面的字符串中得到40,但它可以更改为任何值,如30、5、2、x、yx。括号中的字符串是常量,但整数是变量。因此,解决方案是删除以“(”开头并以“)”结尾的子字符串,然后回显其他所有内容?如何做到这一点我尝试使用子字符串和strpos,但没有找到完美的解决方案?有人能帮我吗

$string = "40 (In Stock: 1)";  
我试过使用

<?php
$stock = "40 (instock: 50)";
$replace_string =  substr($stock, strpos($stock, "("), strpos($stock, ")"));
echo str_replace($replace_string,"",$stock);
?>

但是还有其他选择吗?

为什么不使用正则表达式呢

$string = "40 (In Stock: 1)";
$matches = array();
$pattern = '/(\d+) \(.*?\)/';
if(preg_match($pattern, $string, $matches))
{
     echo $matches[1]; // Prints 40
}
为什么不使用正则表达式呢

$string = "40 (In Stock: 1)";
$matches = array();
$pattern = '/(\d+) \(.*?\)/';
if(preg_match($pattern, $string, $matches))
{
     echo $matches[1]; // Prints 40
}

list($res,)=explode('(',$str,2);
preg_match的完美场景!
list($res,)=explode('(',$str,2);
preg_match的完美场景!看起来很棒,但是你能告诉我这种模式是如何进行的吗?/(\d+)(?)/“有效?当然,模式本身在斜杠内:\d+表示查找多个小数。当它写在圆括号中时,匹配项被存储。然后按照模式“(任何内容)”。括号用反斜杠转义。“*?”是一个贪婪的搜索匹配任何东西直到封闭的括号。仍然不清楚,我的意思是你正在设置“//”内的模式以及如何得到“(“)”?你真的应该深入研究正则表达式的基本知识。看看这个:“/(小数+(任何东西)/”。其中“/”在开头和结尾告诉Being一个正则表达式。任何匹配(!)的东西都写在()将存储到matches数组中。有些字符(如括号)是控制字符,因此如果要查找此类字符,需要在反斜杠之前转义。在模式的下一个字符(即右括号)之前,“*?”是匹配任何字符的魔法。谷歌搜索“perlre perltut”学习基础知识。谢谢你的解释,你能给我一个参考资料吗,我可以在那里找到更多关于正则表达式的信息,实际上我以前从来没有做过正则表达式,php手册在正则表达式中并没有真正的帮助,因为我刚才看到了给我一些初学者友好的参考资料,如果你有…:)看起来很棒,但是你能告诉我模式“/(\d+)(*)是怎样的吗/“有效?当然,模式本身在斜杠内:\d+表示查找多个小数。当它写在圆括号中时,匹配项被存储。然后按照模式“(任何内容)”。括号用反斜杠转义。“*?”是一个贪婪的搜索匹配任何东西直到封闭的括号。仍然不清楚,我的意思是你正在设置“//”内的模式以及如何得到“(“)”?你真的应该深入研究正则表达式的基本知识。看看这个:“/(小数+(任何东西)/”。其中“/”在开头和结尾告诉Being一个正则表达式。任何匹配(!)的东西都写在()将存储到matches数组中。有些字符(如括号)是控制字符,因此如果要查找此类字符,需要在反斜杠之前转义。在模式的下一个字符(即右括号)之前,“*?”是匹配任何字符的魔法。谷歌搜索“perlre perltut”为了学习基础知识。谢谢你的解释,你能给我一个参考资料吗,我可以在那里找到更多关于正则表达式的信息,实际上我以前从来没有做过正则表达式,php手册在正则表达式中并没有真正的帮助,因为我刚刚看到给我一些初学者友好的参考资料,如果你有…:)