По-разному, зависит от среды/языка, где регулярные выражения выполняются.
Обычно в несколько этапов, и даже не всегда рег. выражения нужны/подходят.
При использовании же именно рег. выражений желательно опираться на какие-то конкретные условия (например, не более одной запятой внутри кавычек). В общем виде это будет уже парсер, а не регулярка. Но даже парсеру придётся определиться с условиями, иначе в общем виде нужно будет уметь разбирать и такое:
,1, ','_,2,'text',x'word, ''\'\\word2'
найти все запятые в этом тексте, кроме тех что в одиночных кавычках
В таком виде решается просто, если условиться, что нет избытка кавычек, экранированных кавычек и прочей дичи:
(?:[^,']*'[^']*'[^,']*|[^,']*)(,)(?:[^,']*'[^']*'[^,']*|[^,']*)
https://regex101.com/r/h1A6ZP/1
Все внешние запятые будут в первой группе (зелёные на regex101).
Но если возможна дичь, то придётся изобретать комбайн или отказаться от регулярок.