Для учета других символов, кроме a-z
, вы можете использовать:
/"([^,]+?),(.+?)"/
"
= цитата [^,]+?,
= все, что не являетсязапятая до первой запятой .+?"
= все остальное до следующей кавычки
Обратите внимание, что строка слева и справа от запятой захвачена (...)
строит.Это означает, что при совпадении выражения строка слева будет присвоена \1
, а строка справа будет присвоена \2
.Поэтому, если вы хотите заменить это на что-то вроде left; right
, вы можете использовать:
preg_replace('/"([^,]+?),(.+?)"/', '\1; \2', $csv)
Если вы просто хотите оставить левую и правую части без запятой в середине, вы можете просто заменитьвыражение с левой частью, затем пробел и правая часть.
preg_replace('/"([^,]+?),(.+?)"/', '\1 \2', $csv)