在字符串中查找确切的单词位置

时间:2012-07-09 15:57:46

标签: php

我们说我有一个字符串。

$string = red,green,blue,yellow,black;

现在我有一个变量,它是我要搜索的单词的位置。

$key = 2;

我想以2的位置得到这个词。在这种情况下,答案是blue

5 个答案:

答案 0 :(得分:7)

http://codepad.org/LA35KzEZ

$a = explode( ',', $string );
echo $a[ $key ];

答案 1 :(得分:1)

解决此问题的更好方法是使用explode()将字符串转换为数组。

$string = ...;
$string_arr = explode(",", $string);
//Then to find the string in 2nd position

echo $string_arr[1]; //This is given by n-1 when n is the position you want.

答案 2 :(得分:1)

<?php
$string = preg_split( '/[\s,]+/', $str );

echo $string[$key];

这可以通过将句子分成基于单词边界(空格,逗号,句号等)的单词来实现。它比explode()更灵活,除非您只使用逗号分隔的字符串。

例如,如果str ='你好,我的名字就是狗。你好吗?'和$key = 5,你会得到'如何'。

答案 3 :(得分:0)

假设:

$string = 'red,green,blue,yellow,black';
$key = 2;

然后(&lt; PHP 5.4):

$string_array = explode(',', $string);
$word = $string_array[$key];

然后(&gt; = PHP 5.4):

$word = explode(',', $string)[$key];

答案 4 :(得分:0)

如果您知道您的文字将以逗号分隔,则可以执行以下操作:

$key = 2;
$string = "red,green,blue,yellow,black";
$arr = explode(",",$string);
echo $arr[$key];