2017-04-18 51 views

回答

0

在不使用爆炸和内爆

$string = "04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017"; $string = "'".str_replace(", ","','",$string)."'";

0
$string = "04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017"; 
$array = explode(", ", $string); 
$string = "'".implode("','", $array)."'"; 
0

为了您的具体的例子,你可以使用:

$result = preg_replace('%([\d/]+)%sim', '"\1"', $string); 

输出:

"04/19/2017", "04/20/2017", "04/26/2017", "04/28/2017" 

Regex的说明:

([\d/]+) 

Match the regex below and capture its match into backreference number 1 «([\d/]+)» 
    Match a single character present in the list below «[\d/]+» 
     Between one and unlimited times, as many times as possible, giving back as needed (greedy) «+» 
     A “digit” (any decimal number in any Unicode script) «\d» 
     The literal character “/” «/» 

"\1" 

Insert the character “"” literally «"» 
Insert the text that was last matched by capturing group number 1 «\1» 
Insert the character “"” literally «"» 

Demo

+0

你可以添加你的正则表达式的解释吗? – aynber

+0

当然可以,更新。 –

+0

你可以正确地格式化你的正则表达式解释 –

1
<?php 
// dates in a string 
$data = '04/19/2017, 04/20/2017, 04/26/2017, 04/28/2017'; 

// break them apart into array elements where the , is 
$dates = explode(',', $data); 


/* You then have array of dates you can use/display how you want, ie:: */ 
foreach($dates as $date){ 
    echo $date. '<br/ >'; 
} 

/* OR select single date */ 
echo $dates[0]; 
相关问题