仅用行中的$替换第一个逗号

问题描述 投票:0回答:1

使用Notepad ++,我有一个制表符分隔的数据集,在该数据集中,我只想用$代替第一个字段中的第一个逗号,而其余部分保持不变。我计划使用这个新的数据集使用Excel将第一个字段分为两个字段。我对Regex的基本了解并没有使我具备完成该任务的知识。如何修改此公式以处理第一个字段中的其他逗号?任何帮助,将不胜感激。

原始行:

Parent, Jessica, 1816-1891--->LIS-BMD-006-06--->D--->102--->Laura Bush's Scrapbook

修订版:

Parent$ Jessica, 1816-1891--->LIS-BMD-006-06--->D--->102--->Laura Bush's Scrapbook              

===应用原始表达式后,我发现几行是唯一的,因为它们没有更频繁地分隔Last_Name和First_Names [OR]的逗号,也没有一个分隔Last_Name和First_Names的句点。尽管这个数字只有大约1%,但在150万行的文件中,这表示搜索量很大。

常用模式:

[Payne,Jeremiah --->(表达式可以正常产生Payne $ Jeremiah --->)]

异常模式:

((1)Payne Jeremiah --->(表达式在行上传递,导致从第三个域的数据移回到第二个域)]

((2)佩恩。耶利米书--->(表达式在行上传递,从而导致第三个字段的数据移回第二个字段)

((3)Payne,Jeremiah,Joseph --->(表达式正确替代了第一个逗号,但可能会基于第二个逗号引起问题)

似乎为了在第一个TAB之前更正所有变体,有必要在第一个TAB上创建一个“屏障”,因为这将需要作为TAB分隔符导入到Exel中,以分割原始的第一个TAB。字段。

notepad++ substitution comma
1个回答
0
投票
  • 查找内容:^[^,]*\K,
  • 替换为:$
  • [Check正则表达式

说明:

^        # beginning of line
  [^,]*  # 0 or more any character that is not a comma
  \K     # forget all we have seen until this position
  ,      # a comma
© www.soinside.com 2019 - 2024. All rights reserved.