如何解决将包含特殊字符的字符串与不包含特殊字符的字符串进行匹配
我正在尝试使用Google表格查询来匹配字符串,其中两个字符串都不确定是否包含特殊字符。我会尽力解释:
我有一个数据表
<div><span id="MapTwoResultOne"></span></div>
<div><span id="MapTwoResultTwo"></span></div>
<div><span id="MapTwoResultThree"></span></div>
我的查询功能看起来像这样:
+-----+------+-----+-----+
| A | B | C | D |
|x | y |ø |z |
|xx | yy |á |zz |
|xxx | yyy |e |zzz |
+-----+------+-----+-----+
当前,使用此查询将仅返回1行,因为
=QUERY(A1:D3,"SELECT * WHERE (C = 'ø') OR (C = 'è') OR (C = 'a')")
与'ø'完全匹配,但是其他任何一个都不匹配。
对于
(C = 'ø')
,我们可以将字符串中的所有重音字符替换为它们的未重音字符。
在这种情况下,“è”变为“ e”并具有匹配项-现在查询将返回第二行。(我找到了替换字符串here中所有重音字符的好方法。)
最后,这是我的主要问题所在:
(C = 'è')
。除非我检查了'a'的每个重音变体,否则我想不出一种使其与'á'相匹配的方法,但这似乎很愚蠢。
不幸的是,也无法执行类似(C = 'a')
的事情。
正如我之前提到的,比赛的每一边可能包含也可能不包含重音/特殊字符。
我还应该提到,它将不仅仅是一个字符,而是一个完整的字符串。
如果有人对此有任何可能的解决方案,将不胜感激。
解决方法
您可以使用QUERY
公式代替FILTER
公式。
=FILTER(A2:D22,REGEXMATCH(C2:C22,"ø|è|á")=TRUE)
(请根据需要调整范围。您还可以添加/删除更多特殊字符。)
使用的功能:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。