从字符串中检索2个子字符串

时间:2014-05-14 16:52:14

标签: php string substring

我尝试过substr和split,但我无法弄清楚如何解析这些数据。

$string = 'aDetails.push(new Array("XADP10520", "XADP10520 - ec Example Title"));';

//$label = 'XADP10520';

//$title = 'Example Title';

2 个答案:

答案 0 :(得分:0)

您可以使用基本正则表达式以preg_match()提取两个部分 这是一个例子:

$string = 'aDetails.push(new Array("XADP10520", "XADP10520 - ec Example Title"));';

preg_match('/\("(?<label>.+)", "\1 - ec (?<title>.+)"\)/i', $string, $parts);

$label = $parts['label'];
$title = $parts['title'];

echo $label; // XADP10520
echo $title; // Example Title

请注意我假设两个键都相同,并且- ec部分要删除。

答案 1 :(得分:-1)

不确定你要做什么,但这样的事情应该有效:

<?php
$string = 'aDetails.push(new Array("XADP10520", "XADP10520 - ec Example Title"));';
$tmps   = explode('"', $string);   //NOT SPLIT.. DEPRECATED
$label  = $tmps[1];
$title  = str_replace($label.' - ec ','',$tmps[3]);
?>

没有经过测试,除了这个具体的例子,代码几乎没用,但它应该可以工作