Я не хорош в regex. Кто-то может выручить меня для записи regex для меня?
У меня могут быть значения как это при чтении файла CSV.
"Artist,Name",Album,12-SCS "val""u,e1",value2,value3
Вывод:
Artist,Name Album 12-SCS Val"u,e1 Value2 Value3
Обновление: Мне нравится идея с помощью поставщика Oledb. Мы действительно имеем контроль загрузкой файла на веб-странице, что я считал содержание файла с помощью потокового читателя без фактического файла сохранения в файловой системе. Есть ли любой способ, которым я могу поставщик пользователя Oledb, потому что мы должны указать имя файла в строке подключения и в моем случае, мне не экономили на файле файловая система.
Посмотрите на класс TextFieldParser . Он находится в сборке Microsoft.VisualBasic и выполняет синтаксический анализ с разделителями и фиксированной шириной.
Regex не подходит для этого. Используйте синтаксический анализатор CSV . Либо встроенный , либо сторонний .
Regex здесь может оказаться слишком сложным. Разделите строку на запятые, а затем пройдитесь по результирующим битам и объедините их так, чтобы "количество двойных кавычек в объединенной строке" не было четным.
"hello,this",is,"a ""test"""
...split...
"hello | this" | is | "a ""test"""
... итерируйте и объединяйте, пока не получите четное количество двойных кавычек...
"hello,this" - четное количество кавычек (обратите внимание, что запятая удалена разделителем, вставленным между битами)
is - четное количество кавычек
"a ""test""" - четное количество кавычек
...затем удалите ведущую и последующую кавычки, если они есть, и замените "" на "".