String 将很长的字符串拆分为行和列
使用一个非常基本的SQL编辑器,我将一个大致相当于300000行的字符串提取到Mac终端中。我想把这个很长的字符串分成两个不同的行(每个条目有大约15个不同的元素,但现在都粘在一个字符串中),以及列 数据当前的格式如下所示,其中一些子字段只有一个单词,而其他子字段则有很长的文本块: (u'A'u'B'u'C'u'dfhudhf isduh,fdiu fdjfoidjofiod'u'D')、(u'A'u'B'u'C'dfhudhf isduh,fdiu fdjfoidjofiod'u'D')、(u'A'u'B'u'C'dfhudhf isduh,fdiu fdjfoidjofiod'u'D')、等等 使用String 将很长的字符串拆分为行和列,string,excel,parsing,data-cleaning,String,Excel,Parsing,Data Cleaning,使用一个非常基本的SQL编辑器,我将一个大致相当于300000行的字符串提取到Mac终端中。我想把这个很长的字符串分成两个不同的行(每个条目有大约15个不同的元素,但现在都粘在一个字符串中),以及列 数据当前的格式如下所示,其中一些子字段只有一个单词,而其他子字段则有很长的文本块: (u'A'u'B'u'C'u'dfhudhf isduh,fdiu fdjfoidjofiod'u'D')、(u'A'u'B'u'C'dfhudhf isduh,fdiu fdjfoidjofiod'u'D')、(u
)”(
作为不同行之间的分隔符,u'
作为不同字段的分隔符!复制到Excel的结果只是一个很长的字符串,并不会真正侦听文本到列的命令
我一直在尝试在Excel中拆分此软件,但我无法使其正常工作。如果有其他软件更适合使用,我也非常愿意尝试!请尝试此软件,并让我知道它是如何工作的 这假定字符串位于活动工作表的单元格A1中 这将处理该字符串并输出一个数据表,该表从源字符串所在的同一工作表的第3行开始 将以下步骤放在标准代码模块中:
Public Sub mouse()
Dim i&, j&, s$, r, c, w
s = Replace([a1], " ", "")
r = Split(s, "),(")
ReDim w(1 To UBound(r) + 1, 1 To 1000)
For i = 0 To UBound(r)
c = Split(r(i), "u'")
For j = 1 To UBound(c)
w(i + 1, j + 1) = Replace(Replace(c(j), "'", ""), ")", "")
Next
Next
[a3].Resize(UBound(w, 1), UBound(w, 2)) = w
End Sub
切换回单元格A1中带有长字符串的工作表
按Alt-F8打开“宏”对话框
运行
鼠标在@Exel-Hero上获得大致相同的结果(但保留空格)。如果复制到Word中,请将u'
替换为^t
,将替换为),(
替换为^p
并将文本转换为表格…(可能是默认设置),然后复制到Excel中。欢迎使用。请发布您预期的结果(外观如何)。如果看不到您的文件,很难知道,但Access通常更适合处理数据提取-这可能有助于在两个方向上进行定界。您是否可以在Dropbox共享(或类似共享)的A1单元格中发布一份带有此字符串的工作表?非常感谢!我正在粘贴下面的一个小子集(不幸的是,我不允许共享完整的数据集:():我希望它能正确地解析成excel表格(或成为CSV)成千上万行,否则数据是干净的:(u'0002-7820',u'1953;VOL 36;No 4',None,u'Ceral ABSTRACTS',u'53-74',u'E',u'EL',None),(u'0002-7820',u'1953;第36卷;编号4',u'THORNTON,J.C.,u'Bond与砌体表面物理之间的关系',u'105-120',u'E',u'16',u'3681721',u'EL',u'While the author and the(…)砌体',(等等)我的目标是最终上传R中的所有数据进行分析!谢谢大家的帮助:)