通过regex在PHP中分解字符串

时间:2019-02-25 08:04:50

标签: php regex php-7

我输入的字符串为:

{"Google LLC.", "Microsoft technology, llc", "Samsung"}

我想将其转换为以下数组:

array[0] = Google LLC.
array[1] = Microsoft technology, llc
array[2] = Samsung

如何在PHP中做到这一点?

我试图用逗号将其引爆,但某些字符串本身包含逗号。

2 个答案:

答案 0 :(得分:2)

您可以删除字符串开头和结尾的花括号,并使用str_getcsv函数来解析输入

$str = '{"Google LLC.","Microsoft technology, llc",Samsung}';
print_r(str_getcsv(trim($str, '{}')));

demo

答案 1 :(得分:0)

如果字符串中有一个项目用{}替换,则会使字符串不正确。
要解决这个问题,您可以使用", "将爆炸的前两个字符和后两个字符细分为子字符串。

$str = '{"Google LLC.", "Microsoft technology, llc", "Samsung"}';
$array = explode('", "', substr($str,2,-2));