有许多类似的问题,但我找不到任何地址完全是我的情况而且我一直在尝试并且没有运气。
我有一个逗号分隔的值列表,如下所示:
Apple, Banana, Carrot and Durian, Eggs
所以有些值是简单的词,有些则有多个词。我需要用一对引号来包装每个值,我找到了一个让我非常接近的答案:
preg_replace( $list, '/([^,]+)/g', '"$1"' )
这会产生:
"Apple","Banana","Carrot and Durian","Eggs"
但是有一个问题:它删除了逗号之后的空格。如果我添加空白字符/([^,\s]+)/g
,它不会删除逗号之后的空格,但它会匹配值内的空格:
"Apple", "Banana", "Carrot" "and" "Durian", "Eggs"
https://regex101.com/r/eN2hY4/31
的实时版本提前多多感谢!
答案 0 :(得分:2)
答案 1 :(得分:1)
你可以这样做:
$str ='Apple, Banana, Carrot and Durian, Eggs';
$result = '"' . strtr($str, [', '=>'", "']) . '"';