如何去掉多余的双引号?

2023-12-24

在格式错误的 .csv 文件中,有一行数据带有额外的双引号,例如最后一行:

Name,Comment
"Peter","Nice singer"
"Paul","Love "folk" songs"

如何删除周围的双引号folk并将字符串替换为:

Name,Comment
"Peter","Nice singer"
"Paul","Love _folk_ songs"

在 Ruby 1.9 中,可以执行以下操作:

result = subject.gsub(/(?<!^|,)"(?!,|$)/, '_')

以前的版本没有lookbehind断言。

解释:

(?<!^|,)  # Assert that we're not at the start of the line or right after a comma
"         # Match a quote
(?!,|$)   # Assert that we're not at the end of the line or right before a comma

当然,这是假设我们不会遇到像这样的病理情况

"Mary",""Oh," she said"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何去掉多余的双引号? 的相关文章

  • ruby 的 StringIO 类到底是什么?

    我想我明白StringIO有点类似于Java的StringBuffer类 但我不太完全理解 您将如何定义它及其在 Ruby 中的用途 可能的用途 只是希望能够消除我的困惑 no StringIO http ruby doc org stdl
  • 如何使用斯坦福TokensRegex?

    我正在尝试使用斯坦福大学TokensRegex 但是 我在匹配器行中遇到错误 请参阅注释 它说 请尽力帮助我 下面是我的代码 String file A store has many branches A manager may manag
  • php正则表达式删除数字

    我需要一个正则表达式来删除字符串中的数字 但不删除空格 我目前有 city location UK 0113 Leeds new york sip city 0113Leeds new york city preg replace a z
  • BigDecimal 无法强制转换为 BigDecimal

    这应该很简单 但它却爆炸了 有任何想法吗 d BigDecimal new 2 0 YAML load a gt d to yaml TypeError BigDecimal can t be coerced into BigDecimal
  • 将对象数组中的属性映射到另一个数组的更有效的 Ruby 方法?

    我不会在这里重复我的问题 但是有没有更有效的方法来写这个 def recruits names names for r in self referrals do names lt lt r display name end return n
  • 如何从数组中删除空白元素?

    我有以下数组 cities Kathmandu Pokhara Dharan Butwal 我想从数组中删除空白元素并想要以下结果 cities Kathmandu Pokhara Dharan Butwal 有没有类似的方法compact
  • 如何让 Sinatra 通过 HTTPS/SSL 工作?

    正如标题所示 谷歌没有提供任何与此相关的有用信息 如何为 Sinatra 应用程序设置和配置 HTTPS SSL 如何创建 HTTPS 路由 我以前从未在我的应用程序中使用过 HTTPS 也没有调整 Rack 其他内容的经验 所以我很欣赏详
  • 使用 javascript 将多行、缩进的 json 转换为单行

    我想出了以下函数 用于将多行 缩进的 json 转换为单行 function text var outerRX s n r g innerRX s n r return text replace outerRX function 0 1 r
  • 由于符号链接错误,无法在 Mac OSX 10.8.1 中安装 ruby​​-1.9.2

    首先 我尝试了常见的rvm安装 rvm安装1 9 2 但是 显示了以下错误 The provided compiler usr bin gcc is LLVM based it is not yet fully supported by r
  • 正则表达式删除块注释也删除 * 选择器

    我正在尝试使用 bash 从 css 文件中删除所有块注释 我有以下 sed 命令的正则表达式 sed r s w s w d 这可以很好地去除块注释 例如 This is a comment this is another comment
  • 方法调用中是否有记忆约定?

    我想避免在方法调用中重新评估值 直到现在 我一直在这样做 def some method some method begin lot s of code end end 但它最终变得非常丑陋 在一些代码中 我看到类似以下内容 def som
  • 使用解析将 ** 运算符更改为幂函数?

    我的要求是将 运算符更改为幂函数 例如 1 Input B 2 Output power B 2 2 B 2 T 2 X Output power B 2 我写了下面的正则表达式来解决这个问题 rx r a zA Z0 9 a zA Z0
  • 正则表达式字符串中第一个和最后一个非点的位置

    我希望找到字符串的第一个和最后一个非点元素的位置 理想情况下我想这样做regex在基地R 我已经写过R解决问题的代码 不过 我对一个感兴趣regex解决方案 感谢您的任何建议 这是一个示例数据集和R代码以获得所需的结果 此代码拆分字符串并使
  • 我可以缩短这个正则表达式吗?

    我需要检查字符串是否符合特定的 ID 格式 ID的格式如下 aBcDe fghIj KLmno pQRsT uVWxy 由五个大写或小写字母组成的五个块的序列 由一个破折号分隔 我有以下有效的正则表达式 string idFormat a
  • .htaccess 异常导致主目录出现问题

    这是我的目录结构 localhost or livehost app bootstrap public vendor code demo 这是我的 htaccess
  • Ruby mp3 Id3 解析

    目前我正在从事一个音乐项目 处理用户 mp3 上传 问题是我找不到适用于所有文件的 id3 库 我努力了id3 ruby and Mp3Info库 但它们都没有给我一致正确的结果 例如 最常见的问题 错误的流参数 比特率和采样率 有时是持续
  • 使用先前的反向引用作为命名捕获组的名称

    有没有办法使用对先前捕获组的反向引用作为捕获组的名称命名捕获组 这可能不可能 如果不可能 那么这就是一个有效的答案 下列 data description some description preg match data matches p
  • 将 ruby​​ 类转换为模块比使用改进更好的方法?

    Module refine http ruby doc org core 2 0 0 Module html method i refine方法接受一个类和一个块并返回一个细化模块 所以我想我可以定义 class Class def inc
  • 回形针不支持 .doc 文件

    在 Rails 4 0 2 中 我使用回形针 gem 上传文件 但它不支持 doc 文件 在文件上传字段下方 显示一条错误消息 扩展名与其内容不匹配 在模型中 检查内容类型的验证如下 validates attachment content
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望

随机推荐

  • 如何在一系列箱线图中的箱线图旁边显示数值平均值和标准值?

    我试图在多个箱形图中的箱形图旁边显示平均值和标准差的值 当我尝试时什么也没有显示 Boxplot 3 data3 np array 4 38 3 27 6 07 4 35 3 51 6 14 4 09 3 33 5 92 4 9 3 97
  • Rails:渲染方法中的位置选项是什么

    嘿我想知道 Rails 中渲染方法的位置选项是什么 文档在这里http guides rubyonrails org layouts and rendering html http guides rubyonrails org layout
  • Windsor MixIn 是单例吗?

    我有一个 MixIn 需要某种状态才能运行 我正在这样注册 container Register Component For Of ICat ImplementedBy Of Cat LifeStyle Transient Proxy Mi
  • java有“Linked ConcurrentHashMap”数据结构吗?

    我需要一个 LinkedHashMap 并且线程安全的数据结构 我怎样才能做到这一点 您可以将映射包装在 Collections synchronizedMap 中以获取维护插入顺序的同步哈希映射 这不像 ConcurrentHashMap
  • 使用正则表达式过滤对象数组

    我有一个这样的数据数组 const data Date 2018010101 color blue Date 2018010102 color blue Date 2018010103 color red Date 2018010104 c
  • Angular - 类型“string”不可分配给类型“boolean”

    角度 4 3 1角度 CLI 1 2 3打字稿 2 3 4 组件打字稿文件 public saveName string public overwrite boolean 以下标记失败并显示类型 string 不可分配给类型 boolean
  • 向 JNA 类 Java (Kernel32) 添加另一个方法

    我试图使用 WIN32 dll 中的方法 未包含在 JNA 中 方法是获取产品信息 我在单独的项目和工作中尝试这个 public interface Kernel32 extends Library public boolean GetPr
  • SQL Server DACPAC 部署删除用户/角色/权限

    我正在使用 DACPAC 部署 Azure SQL Server 数据库 每次我部署时 它都会删除我的用户 角色和权限 即使我在我正在使用的发布配置文件中明确告诉它不要这样做 发布配置文件定义为
  • Amazon S3 WebDAV 访问

    我想在不使用第三方软件的情况下访问我的 Amazon S3 存储桶 而只需通过大多数操作系统中提供的 WebDAV 功能即可 有没有办法做到这一点 对我来说重要的是不需要第三方软件 有多种方法可以做到这一点 不知道你的情况如何 所以这里是
  • 在 TypeScript 中使用元组(类型推断)

    给出这个稍微人为的例子 List Of Names map name index gt name index 2 map name num gt 为什么 name 和 num 位于 type 的最后一行string number显然推断为字
  • 我可以在不安装 Visual Studio 的情况下使用 mstest.exe 吗?

    我想使用 mstest exe 在生成服务器上运行单元测试 但我不想在生成服务器上安装 Visual Studio 我可以只安装 MSTest 而不使用 Visual Studio 吗 无需 Visual Studio 即可运行 mstes
  • PHP:将文档/文本解析为句子

    我正在寻找类似的 PHP 版本 http journals ecs soton ac uk java tutorial intl collat ion textBound html http journals ecs soton ac uk
  • vim:执行编辑器命令列表

    vim 有没有办法给出编辑器命令列表 我想执行一系列 全局 命令 并且这些命令有一些模式 因此 我理想地希望生成命令列表 使用正则表达式搜索和替换 然后运行它们 而不必键入每个命令 谢谢 高拉夫 更新 s buffer register g
  • 是否可以在 Mountain Lion 上当前的 Xcode 4.6.1 工具链中启用 _LIBCPP_DEBUG2?

    这个线程 http comments gmane org gmane comp compilers clang devel 16838是对 clang 的 libc 调试模式的早期讨论 该模式通过定义来启用 LIBCPP DEBUG2在编译
  • 在 R 中添加新行

    我需要在后面添加一个新行 我的数据如下所示 1 60112 486 100 xxx BS 1 1 486 100 yyy TE I need 1 60112 486 100 xxx BS 1 1 486 100 yyy TE 我怎样才能实现
  • 无法达到最佳性能

    我正在努力达到每个人的最佳表现SM从下面的代码 峰值位于 25 GFlops GTX275 GT200 Arch 之间 此代码最多提供 8 GFlops global void new ker float x int index threa
  • 适用于 GAE 的 Python 无头浏览器

    我正在尝试将 Angular js 客户端与 Google Appengine 上的 webapp2 一起使用 为了解决 SEO 问题 我们的想法是使用无头浏览器在服务器端运行 javascript 并将生成的 html 提供给爬虫 有没有
  • 如何覆盖 Nixos configuration.nix 中的 2(两个)包

    我的configuration nix 中有一些需要覆盖的包 所以我写的代码如下 nixpkgs config allowUnfree true packageOverrides pkgs rec mumble pulse audio mu
  • 在 JavaScript 中获取字体规格?

    我目前正在开发一个使用 HTML5 画布作为渲染目标的 JavaScript 项目 为了使我的代码能够很好地与我提供的 严格指定的 接口配合使用 我需要能够获取一种字体并提取该字体的上升和下降高度 这将使客户能够更准确地定位文本 我知道我可
  • 如何去掉多余的双引号?

    在格式错误的 csv 文件中 有一行数据带有额外的双引号 例如最后一行 Name Comment Peter Nice singer Paul Love folk songs 如何删除周围的双引号folk并将字符串替换为 Name Comm