当前位置: 首页 > 知识库问答 >
问题:

为SSIS导入替换CSV中的双引号(限定符内)

越文康
2023-03-14

我有一个从。csv文件导入数据的SSIS包。这个文件中的每个条目都有doulbe引号()限定符,但之间也有。我还添加了逗号()作为列分隔符。我不能给出我使用的原始数据,但这里有一个如何将数据传递到平面文件源代码中的示例:

"ID-1","A "B"", C, D, E","Today"
"ID-2","A, B, C, D, E,F","Yesterday"
"ID-3","A and nothing else","Today"
    null

你们谁能帮我解决这件事吗?会很棒的!

提前感谢!

共有1个答案

邹嘉石
2023-03-14

要根据您的规范将双引号替换为单引号,请使用这个简单的regex。此regex将允许在行的开头和/或结尾使用空格。

string pattern = @"(?<!^\s*|,)""(?!,""|\s*$)";
string resultString = Regex.Replace(subjectString, pattern, "'", RegexOptions.Multiline);

这是对模式的解释:

// (?<!^\s*|,)"(?!,"|\s*$)
// 
// Options: ^ and $ match at line breaks
// 
// Assert that it is impossible to match the regex below with the match ending at this position (negative lookbehind) «(?<!^\s*|,)»
//    Match either the regular expression below (attempting the next alternative only if this one fails) «^\s*»
//       Assert position at the beginning of a line (at beginning of the string or after a line break character) «^»
//       Match a single character that is a “whitespace character” (spaces, tabs, and line breaks) «\s*»
//          Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
//    Or match regular expression number 2 below (the entire group fails if this one fails to match) «,»
//       Match the character “,” literally «,»
// Match the character “"” literally «"»
// Assert that it is impossible to match the regex below starting at this position (negative lookahead) «(?!,"|\s*$)»
//    Match either the regular expression below (attempting the next alternative only if this one fails) «,"»
//       Match the characters “,"” literally «,"»
//    Or match regular expression number 2 below (the entire group fails if this one fails to match) «\s*$»
//       Match a single character that is a “whitespace character” (spaces, tabs, and line breaks) «\s*»
//          Between zero and unlimited times, as many times as possible, giving back as needed (greedy) «*»
//       Assert position at the end of a line (at the end of the string or before a line break character) «$»
 类似资料:
  • 本文向大家介绍替换php字符串中的单引号为双引号的方法,包括了替换php字符串中的单引号为双引号的方法的使用技巧和注意事项,需要的朋友参考一下 实例如下: 以上这篇替换php字符串中的单引号为双引号的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 我正在从数据库中检索数据,其中该字段包含带有HTML数据的字符串。我想替换所有的双引号,使得它可以被用于的 jQuery的 。 使用Java,我正在尝试使用替换引号。 结果字符串未显示所需的更改。O’Reilly的一篇文章规定了使用Apache字符串工具。还有其他办法吗? 是否有正则表达式或我可以使用的东西? 问题答案: 这是如何做 请注意,字符串是不可变的,因此仅仅做是不够的。您必须

  • 本文向大家介绍js 单引号替换成双引号,双引号替换成单引号的实现方法,包括了js 单引号替换成双引号,双引号替换成单引号的实现方法的使用技巧和注意事项,需要的朋友参考一下 1.双引号替换成单引号 2.单引号替换成双引号 以上这篇js 单引号替换成双引号,双引号替换成单引号的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 为了澄清,我使用的是XSLT1.0。很抱歉一开始没有具体说明。

  • 问题内容: 如何使用PHP 用(我认为其称为单引号)替换(我认为它称为双引号)? 问题答案: 或重新分配

  • 问题内容: 因此,我正在编写一个程序,将文本文件分解为单词,然后将列表写入新的文本文件。 我遇到的问题是我需要列表中的字符串使用双引号而不是单引号。 例如 我得到这个当我想这个 这是我的代码 我是python的新手,对此一无所获。有人知道如何解决吗? [编辑:我忘了提及我在arduino项目中使用的输出,该项目要求列表具有双引号。 问题答案: 您无法更改的工作方式。 如何使用用于字符串的JSON格