我有如下因素结构的字符串:获取分隔符前的第一个字符串?
7_string_12
7_string2_122
7_string3_1223
我怎么能前第二获得串“_”?
我希望我的最终结果是:
7_string
7_string2
7_string3
我使用爆炸(“_”,$字符串),并结合前两个值,但我的剧本很慢!
我有如下因素结构的字符串:获取分隔符前的第一个字符串?
7_string_12
7_string2_122
7_string3_1223
我怎么能前第二获得串“_”?
我希望我的最终结果是:
7_string
7_string2
7_string3
我使用爆炸(“_”,$字符串),并结合前两个值,但我的剧本很慢!
$str = '7_string_12';
echo substr($str,0,strrpos($str,'_'));
呼应
7_string
不管什么在字符串
的开头。如果它总是与7_开始你可以试试这个:
$string = substr($text, 0, strpos($text, '_', 2));
对strpos()搜索第一个_从字符3开始(=字符串中的s)。然后使用substr()选择从第一个字符开始到由strpos()返回的字符的整个字符串。
$s1 = '7_string_12';
echo substr($s1, 0, strpos($s1, '_', 2));
第一个标记总是一个字符的假设有点危险。 – 2012-10-14 08:07:27
谢谢!我还有一个问题!如何让此代码向我显示以下结果:string?这是为了显示分隔符之间的字符串。提前致谢 ! – dido 2012-01-11 11:33:14
@dilyan_kn'preg_match('/ _(\ S +)_ /',$ str,$ m); echo $ m [1];' – k102 2012-01-11 11:38:15
请注意,如果输入不像'7_string2_abc_123',substr($ str,0,strrpos($ str,'_'))'可以。因为输出将是'7_string2_abc'。 – yasouser 2014-01-02 18:28:26