减少和加速多个regexreplace公式
我使用此Loooong公式检查单元格A33中的数据是否具有单元格索引(“类别”!$A$4:$A$30;1;1)-单元格A4中的regexmatch模式-如果为真,则使用单元格索引中的regexreplace模式(“类别”!$B$4:$B$30;1;1)-单元格B4。如果不是-我去用regexmatch模式检查下一个单元格-(“类别”!$A$4:$A$30;2;1)-单元格A5。直到找到正确的模式,或者直到到达最后一个具有模式A30=“^.$”,B30=“”的单元格A30 因为他们的模式非常多样化,所以没有必要合并成一个。 现在公式对我来说太慢了,而且很难快速编辑。我如何减少和加速公式减少和加速多个regexreplace公式,regex,google-sheets,Regex,Google Sheets,我使用此Loooong公式检查单元格A33中的数据是否具有单元格索引(“类别”!$A$4:$A$30;1;1)-单元格A4中的regexmatch模式-如果为真,则使用单元格索引中的regexreplace模式(“类别”!$B$4:$B$30;1;1)-单元格B4。如果不是-我去用regexmatch模式检查下一个单元格-(“类别”!$A$4:$A$30;2;1)-单元格A5。直到找到正确的模式,或者直到到达最后一个具有模式A30=“^.$”,B30=“”的单元格A30 因为他们的模式非常多样化
=IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;1;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;1;1);INDEX('categories'!$B$4:$B$30;1;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;2;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;2;1);INDEX('categories'!$B$4:$B$30;2;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;3;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;3;1);INDEX('categories'!$B$4:$B$30;3;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;4;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;4;1);INDEX('categories'!$B$4:$B$30;4;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;5;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;5;1);INDEX('categories'!$B$4:$B$30;5;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;6;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;6;1);INDEX('categories'!$B$4:$B$30;6;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;7;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;7;1);INDEX('categories'!$B$4:$B$30;7;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;8;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;8;1);INDEX('categories'!$B$4:$B$30;8;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;9;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;9;1);INDEX('categories'!$B$4:$B$30;9;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;10;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;10;1);INDEX('categories'!$B$4:$B$30;10;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;11;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;11;1);INDEX('categories'!$B$4:$B$30;11;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;12;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;12;1);INDEX('categories'!$B$4:$B$30;12;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;13;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;13;1);INDEX('categories'!$B$4:$B$30;13;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;14;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;14;1);INDEX('categories'!$B$4:$B$30;14;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;15;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;15;1);INDEX('categories'!$B$4:$B$30;15;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;16;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;16;1);INDEX('categories'!$B$4:$B$30;16;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;17;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;17;1);INDEX('categories'!$B$4:$B$30;17;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;18;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;18;1);INDEX('categories'!$B$4:$B$30;18;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;19;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;19;1);INDEX('categories'!$B$4:$B$30;19;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;20;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;20;1);INDEX('categories'!$B$4:$B$30;20;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;21;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;21;1);INDEX('categories'!$B$4:$B$30;21;1));
IF(REGEXMATCH($A33;INDEX('categories'!$A$4:$A$30;22;1))=TRUE;REGEXREPLACE($A33;INDEX('categories'!$A$4:$A$30;22;1);INDEX('categories'!$B$4:$B$30;22;1));))))))))))))))))))))))
好的,已经有了gogle论坛的答案,谢谢Tackky:
=index(filter(regexreplace($C2;$A$2:$A$19;$B$2:$B$19);regexmatch($C2;$A$2:$A$19));1)