PHP搜索字符串然后获取下一个字符

时间:2010-09-11 15:48:21

标签: php html regex

我有一个看起来像这样的字符串:

blah blah blah
Team ID:</div>xxxxxxx
blah blah blah

其中x是7位数字。

如何搜索“团队ID:”,然后获取前面的7位数字? (在PHP中)。

2 个答案:

答案 0 :(得分:5)

使用preg_match。它接受一个可选的数组,它将匹配它。索引0将包含整个匹配模式,索引1将包含由(\d{7})匹配的7位数:

$str = 'blah blah blah
Team ID:</div>1234567
blah blah blah';

$matches = array();
preg_match('/Team ID:<\/div>(\d{7})/', $str, $matches);

echo $matches[0]; // "Test ID:</div>1234567"
echo $matches[1]; // "1234567"

$team_id = (int)$matches[1]; // convert matches to an integer

务必检查preg_match的返回值;如果它不是1,则该模式无法匹配输入字符串中的任何内容。

答案 1 :(得分:0)

这是一个不使用正则表达式的解决方案:

$str='blah blah blah
Team ID:</div>1234567
blah blah blah';

$key='TeamID:</div>';

echo substr(strstr($str,$key),strlen($key),7);