Php 从字符串中检索2个子字符串
我尝试过substr和split,但我不知道如何解析这些数据Php 从字符串中检索2个子字符串,php,string,substring,Php,String,Substring,我尝试过substr和split,但我不知道如何解析这些数据 $string = 'aDetails.push(new Array("XADP10520", "XADP10520 - ec Example Title"));'; //$label = 'XADP10520'; //$title = 'Example Title'; 不确定您想做什么,但类似的方法应该可以: <?php $string = 'aDetails.push(new Array("XADP10520", "X
$string = 'aDetails.push(new Array("XADP10520", "XADP10520 - ec Example Title"));';
//$label = 'XADP10520';
//$title = 'Example Title';
不确定您想做什么,但类似的方法应该可以:
<?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]);
?>
您可以使用基本正则表达式通过preg\u 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
$string='aDetails.push(新数组(“XADP10520”,“XADP10520-ec示例标题”);
预匹配('/\(“(?+)”,“\1-ec(?)“\)/i',$string,$parts);
$label=$parts['label'];
$title=$parts['title'];
echo$label;//XADP10520
echo$title;//示例标题
请注意,我假设两个键相同,并且要删除-ec
部分。那么为什么$title
只等于示例标题
,而不是示例中的完整字符串XADP10520-ec示例标题
?您想做什么?这看起来像是试图在php中解析javascript,这毫无意义。@JonathanKuhn可能是因为XADP10520
是标签,不应该是标题的一部分。然后以-
开头的标题可能会很奇怪。@LoganMurphy,但显然在JS中(字符串似乎是)它是标题的一部分。如果不是,那么-ec
呢?