gpt4 book ai didi

excel - 替换所有非字母数字字符,包括通配符

转载 作者:行者123 更新时间:2023-12-04 20:08:13 26 4
gpt4 key购买 nike

我从 JvdV answer 中得到这个美丽的公式:

=TRIM(CONCAT(IF(ISNUMBER(SEARCH(MID(A1,ROW(A$1:INDEX(A:A,LEN(A1))),1),"-./ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ")),MID(A1,ROW(A$1:INDEX(A:A,LEN(A1))),1)," ")))
此公式将任何非字母数字字符 (&^%]#$) 替换为简单的空格“”。
我在公式中加入了一些异常(exception)(-./),但这并不是所有异常(exception)。
通配符呢?如何使用此公式过滤通配符(〜*?)?
我想:好的,我将使用 FIND 而不是 SEARCH,一切都会正确,只需将小写和大写字母放在 FIND 索引中,如下所示: *"-./ 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"*然后我想:但是,如果我不仅要保留数字和常规字母怎么办?如果我想保留所有变音符号怎么办,像这样: "ÁÀȦÄǍĀÃÅĄȺẤẦẮẰǠǺǞẪẴẢȀȂẨẲẠḀẬẶĂÂḂɃƁḄḆĆĊĈČÇȻḈƇƆḊĎḐĐƊḌḒḎÐƉÉÈĖÊËĚĔĒẼĘȨɆẾỀḖḔỄḜẺȄȆỂẸḘḚỆÉÈÊËḞƑǴĠĜǦĞḠĢǤƓḢĤḦȞḨĦḤḪⱧÍÌİÏǏĬĪĨĮƗḮỈȈȊỊḬÍÌÏÎȷĴǰḰǨĶƘᶄḲḴⱩꝀꝂꝄĹĿĽⱢⱠĻȽŁḶḼḺḸꝈḾṀṂŃǸṄŇÑŅƝṆṊṈÑŊÓÒȮÔÖǑŎŌÕǪŐỐỒƟØṒṐṌȪỖṎǾȬǬỎȌȎƠỔỌỚỜỠỘỞỢÓÒÔÖÕØṔṖⱣƤƦŔṘŘŖɌⱤȐȒṚṞṜŚṠŜŠṤṦṢṨŞṪŤƬṬƮṰṮȾŢŦÚÙÛÜǓŬŪŨŮŲŰɄǗǛṸṺỦȔȖƯỤṲỨỪṶṴỮỬỰÚÙÛÜṼṾẂẀẆŴẄẈẊẌÝỲẎŶŸȲỸɎỶƳỴÝŹŻẐŽƵẒẔ"然后小写和大写字母对于 FIND 索引来说太多了。
好的,对于 SEARCH 索引也太多了,因为函数接受最大值。 255 长度,但假设索引中只有 200 个字符(数字、字母和一些变音符号)
所以,问题是可用的:
如何用这种公式过滤(用空格替换)通配符(~*?)?

最佳答案

当我阅读这个问题时,有几个问题:

  • 如何在 SEARCH() 的第二个参数中包含超过 255 个字符;
  • 如何在 SEARCH() 的第二个参数中排除文字通配符;

  • 绕过长度限制的一种方法是为 SEARCH() 提供一个选项数组,在本例中是一个长度小于 255 的两个元素的数组:
    enter image description here C1 中的公式:
    =TRIM(CONCAT(IF(MMULT(IFERROR(SEARCH("~"&MID(A1,ROW(A$1:INDEX(A:A,LEN(A1))),1),{"ÁÀȦÄǍĀÃÅĄȺẤẦẮẰǠǺǞẪẴẢȀȂẨẲẠḀẬẶĂÂḂɃƁḄḆĆĊĈČÇȻḈƇƆḊĎḐĐƊḌḒḎÐƉÉÈĖÊËĚĔĒẼĘȨɆẾỀḖḔỄḜẺȄȆỂẸḘḚỆÉÈÊËḞƑǴĠĜǦĞḠĢǤƓḢĤḦȞḨĦḤḪⱧÍÌİÏǏĬĪĨĮƗḮỈȈȊỊḬÍÌÏÎȷĴǰḰǨĶƘᶄḲḴⱩꝀꝂꝄĹĿĽⱢⱠĻȽŁḶḼḺḸꝈḾṀṂŃǸṄŇÑŅƝṆṊṈÑŊÓÒȮÔÖǑŎŌÕǪŐỐỒƟØṒṐṌȪỖṎǾȬǬỎȌȎƠỔỌỚỜỠỘỞỢÓÒÔÖÕØṔṖⱣƤƦŔṘŘŖɌⱤ";"ȐȒṚṞṜŚṠŜŠṤṦṢṨŞṪŤƬṬƮṰṮȾŢŦÚÙÛÜǓŬŪŨŮŲŰɄǗǛṸṺỦȔȖƯỤṲỨỪṶṴỮỬỰÚÙÛÜṼṾẂẀẆŴẄẈẊẌÝỲẎŶŸȲỸɎỶƳỴÝŹŻẐŽƵẒẔ-./*? 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),0),{1,1}),MID(A1,ROW(A$1:INDEX(A:A,LEN(A1))),1)," ")))
    我们在这里所做的是:
  • 使用水平数组 {abc;xyz} 来检查我们的字符,它是一个垂直数组 {a,b,c} 。注意半列和逗号之间的区别。
  • 结果将是一个 MMULT() 可以求和的二维数组。这意味着如果在数组的两个元素中的任何一个中找到该字符,它将返回相同的字符。否则,一个空间。
  • 特殊通配符现在也包含在 额外的波浪号中,以将 转义,就像实际上所有字符一样。
  • 如果 Excel 不能将所有小写变音符号识别为大写对应,只需将它们添加到两个元素之一。如果需要,添加第三个。但是要知道,那时您还需要扩展 MMULT() 中的第二个参数。

  • 可视化上述内容:
    enter image description here
    请记住,您使用的是 Excel 2019,这意味着您需要 CSE 输入此公式。不用说,使用它的动态数组功能在 ms365 中一切都会变得容易得多。

    关于excel - 替换所有非字母数字字符,包括通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71420426/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com