小编Fil*_*cuk的帖子

递归 LAMBDA 用查找表中的特定替代品替换字符

目标是迭代字符表的行并用其替代字符替换每个字符。

本例中的字符表为={"&","&amp;";"<","&lt;";">","&gt;";"'","&apos;";"""","&quot;"}, 或:
在此输入图像描述
*(旁注:"&","&amp;"在这种情况下,必须位于列表的最后,否则它将替换之前替换中的其他出现,因为我们将从最后到第一个进行。)

公式:

=LAMBDA(XML,Pos,
LET(
Cls,{"&","&amp;";"<","&lt;";">","&gt;";"'","&apos;";"""","&quot;"},
Row,IF(ISOMITTED(Pos),ROWS(Cls),Pos),
Crf,INDEX(Cls,Row,1),
Crr,INDEX(Cls,Row,2),
Sub,SUBSTITUTE(XML,Crf,Crr),
IF(Row=0,XML,ENCODEXML(Sub,Row-1))
))
Run Code Online (Sandbox Code Playgroud)

预期结果=ENCODEXML("sl < dk & jf")sl &lt; dk &amp jf
我收到#VALUE!错误。

excel lambda excel-formula excel-lambda

4
推荐指数
2
解决办法
664
查看次数

标签 统计

excel ×1

excel-formula ×1

excel-lambda ×1

lambda ×1