stackoverflow
我有这个CSV文件,其中包含我需要编辑的产品信息:
1)每行对应一个特定产品
2)列A列出了该产品所属的类别,其显示方式如下(竖线用作字符串的定界符):
Mount type|Standalone
Purpose|Functional|Watches
Color|White
Style|Classical
如果特定产品具有多种颜色,则A列中的单元格允许列出许多具有相同属性和不同值的字符串,即:
Mount type|Standalone
Purpose|Functional|Watches
Color|White
Color|Blue
Color|Gray
Style|Classical
3)列B包含产品属性,如下所示:
Attribute|Model|1-0001
Attribute|Material:|Resin
Attribute|Type:|Watch
Attribute|Mount type:|Standalone
Attribute|Color:|White
Attribute|Style:|Classical
Attribute|Height:|10
Attribute|Width:|5
Attribute|Weight:|4
但是,B列中的单元格不允许具有相同属性和不同值的多个字符串。所以一个不能拥有
Attribute|Model|1-0001
Attribute|Material:|Resin
Attribute|Type:|Watch
Attribute|Mount type:|Standalone
Attribute|Color:|White
Attribute|Color:|Blue
Attribute|Color:|Gray
Attribute|Style:|Classical
Attribute|Height:|10
Attribute|Width:|5
Attribute|Weight:|4
因为遵循唯一属性规则,单元格的“颜色”值将折叠到该属性的最上面(第一个)字符串,-在此示例中为“属性|颜色:|白色”,-删除其他具有属性“颜色”的字符串,导致数据丢失。
这正是发生的情况,因为我错误地使用不同的行列出了每个产品的Color属性,而不是(我现在知道)用逗号和空格将它们分开。因此,我现在有一个文件,其中包含接近1900行产品特征,其颜色属性被破坏:所有单色颜色均未受到任何损害,但所有多色颜色仅列出了一种颜色,而其他颜色则被破坏。
能否请您帮我编辑此文件中的数据,以使B列中的Color属性变为单行属性,其值基于A列的值(用','分隔)(还保留了该列中的所有其他值)单元格保持不变):
A和B中的当前文本:
Column A Column B
Mount type|Standalone Attribute|Model|1-0001
Purpose|Functional|Watches Attribute|Material:|Resin
Color|White Attribute|Type:|Watch
Color|Blue Attribute|Mount type:|Standalone
Color|Gray Attribute|Color:|White
Style|Classical Attribute|Style:|Classical
Attribute|Height:|10
Attribute|Width:|5
Attribute|Weight:|4
成为:
Column A Column B
Mount type|Standalone Attribute|Model|1-0001
Purpose|Functional|Watches Attribute|Material:|Resin
Color|White Attribute|Type:|Watch
Color|Blue Attribute|Mount type:|Standalone
Color|Gray Attribute|Color:|White, Blue, Gray
Style|Classical Attribute|Style:|Classical
Attribute|Height:|10
Attribute|Width:|5
Attribute|Weight:|4
解决这个问题肯定超出了我的能力范围,所以我真的希望您能提供帮助。 谢谢您的时间和精力。