使用 Excel 按顺序将换行符替换为另一个字符串中的子字符串
Replace linebreak with substring from another string in sequence using Excel
我想用字符串 2 的子字符串替换字符串 1 上的换行符。替换顺序应基于字符串 2 上的换行符。
example/idea 应该是这样的:
字符串 1:
date1|date2|date3|date4|date5|
字符串 2:
sentence1|sentence2|sentence3|sentence4|sentence5|
预期结果:
date1sentence1date2sentence2date3sentence3date4sentence4date5sentence5
我使用的公式我知道是不完整的:
=SUBSTITUTE(A1,MID(A1,6,1),"?")
提前致谢....
如果您有权访问 CONCAT,则可以使用此数组形式:
=CONCAT(TRIM(MID(SUBSTITUTE(A1,"|",REPT(" ",999)),(ROW($ZZ1:INDEX($ZZ:$ZZ,LEN(A1)-LEN(SUBSTITUTE(A1,"|",""))))-1)*999+1,999))&TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),(ROW($ZZ1:INDEX($ZZ:$ZZ,LEN(A2)-LEN(SUBSTITUTE(A2,"|",""))))-1)*999+1,999)))
数组公式需要在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter来确认。
如果有人也可以访问动态数组公式,那么他们可以使用:
=CONCAT(TRIM(MID(SUBSTITUTE(A1,"|",REPT(" ",999)),SEQUENCE(LEN(A2)-LEN(SUBSTITUTE(A2,"|","")),,1,999),999))&TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),SEQUENCE(LEN(A2)-LEN(SUBSTITUTE(A2,"|","")),,1,999),999)))
它不再需要 CSE 条目。
如果每个字符串总是 5 个项目,那么可以使用 SUBSTITUTE:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),1,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),999,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),2000,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),3000,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),4000,999)),1)
它要求每个项目使用一个嵌套的 SUBSTITUTE。
我想用字符串 2 的子字符串替换字符串 1 上的换行符。替换顺序应基于字符串 2 上的换行符。 example/idea 应该是这样的:
字符串 1:
date1|date2|date3|date4|date5|
字符串 2:
sentence1|sentence2|sentence3|sentence4|sentence5|
预期结果:
date1sentence1date2sentence2date3sentence3date4sentence4date5sentence5
我使用的公式我知道是不完整的:
=SUBSTITUTE(A1,MID(A1,6,1),"?")
提前致谢....
如果您有权访问 CONCAT,则可以使用此数组形式:
=CONCAT(TRIM(MID(SUBSTITUTE(A1,"|",REPT(" ",999)),(ROW($ZZ1:INDEX($ZZ:$ZZ,LEN(A1)-LEN(SUBSTITUTE(A1,"|",""))))-1)*999+1,999))&TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),(ROW($ZZ1:INDEX($ZZ:$ZZ,LEN(A2)-LEN(SUBSTITUTE(A2,"|",""))))-1)*999+1,999)))
数组公式需要在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter来确认。
如果有人也可以访问动态数组公式,那么他们可以使用:
=CONCAT(TRIM(MID(SUBSTITUTE(A1,"|",REPT(" ",999)),SEQUENCE(LEN(A2)-LEN(SUBSTITUTE(A2,"|","")),,1,999),999))&TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),SEQUENCE(LEN(A2)-LEN(SUBSTITUTE(A2,"|","")),,1,999),999)))
它不再需要 CSE 条目。
如果每个字符串总是 5 个项目,那么可以使用 SUBSTITUTE:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),1,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),999,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),2000,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),3000,999)),1),"|",TRIM(MID(SUBSTITUTE(A2,"|",REPT(" ",999)),4000,999)),1)
它要求每个项目使用一个嵌套的 SUBSTITUTE。