gpt4 book ai didi

excel - 正则表达式:用不在引号内的 Tab 替换每个逗号

转载 作者:行者123 更新时间:2023-12-04 20:13:10 25 4
gpt4 key购买 nike

我有一个庞大的条目数据集,如下所示:

(21, 2, '23.5R25 ETADT', 'description, with a comma'),
(22, 1, '26.5R25 ETADT', 'Description without a comma'),
(23, 5, '20.5R20.5', 'Another description with ; semicolumn'),
我正在尝试用选项卡替换列表中的每个逗号。排除单引号内的逗号。也不包括结束逗号。
因此示例条目应变为:
(21[TAB]2[TAB]'23.5R25 ETADT'[TAB]'description, with a comma'),
(22[TAB]1[TAB]'26.5R25 ETADT'[TAB]'Description without a comma'),
(23[TAB]5[TAB]'20.5R20.5'[TAB]'Another description with ; semicolumn'),
我有大约 6000 行这样的数据。这些选项卡允许我告诉 Excel 将这些条目的元素导入到不同的列中。
我试过的正则表达式是这样的: [ ]*,[ ]*但是这个正则表达式会选择所有的逗号,甚至是单引号内的逗号。

最佳答案

看起来你的每一行在括号内都有 4 个元素。看起来只有最后 2 个元素使用单引号。如果可以做出这些假设,我已经在 Notepad++ 中测试了以下内容:

  • “查找内容:”^\(([^,]*),\s*([^,]*),\s*'([^']*)'\s*,\s*
  • “替换为:” \(\1\t\2\t'\3'\t

  • 编辑:

    搜索正则表达式依赖于 4 列模型,只有最后两个元素有单引号。从视觉上看,它是这样工作的:

    Regular expression visualization
  • ^\( : 查找左括号
  • ([^,]*) : 捕获元素 1
  • 的所有非逗号字符
  • ,\s* : 匹配逗号和任何尾随空格
  • ([^,]*) : 捕获元素 2
  • 的所有非逗号字符
  • ,\s* : 匹配逗号和任何尾随空格
  • '([^']*)' : 捕获单引号中的字符串,该字符串将是元素 3
  • 的全部
  • \s*,\s* : 匹配逗号和所有周围的空格
  • 忽略字符串的其余部分,没有要替换的逗号我们只想替换我们刚刚在
  • 中读取的部分行

    关于excel - 正则表达式:用不在引号内的 Tab 替换每个逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33411578/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com