2013-11-28 68 views
0

我正在尋找一種將單元格中的字符串與帶有通配符的字符串數組進行比較的函數。例如,在\my\path\a A1將被\my\path\?\my\*\a查找與通配符匹配的數組的文本的單元格

到目前爲止,我使用match函數相匹配的,是他們像

match(A1, {"\my\path\?", "\my\*\a"}, 0} 

可以用嗎?爲匹配#N/A爲不匹配,1:

回答

1
=MATCH({"\my\path\?","\my\*\a"},A1,0) 

輸入作爲數組式(Ctrl + Shift + Enter鍵)將返回包含用於陣列中的每個條目的結果的數組。


去哪裏從那裏取決於什麼導致你想要的:

要計算匹配模式的數量(輸入作爲數組公式):

=SUM(IFERROR(MATCH({"\my\path\?","\my\*\a"},A1,0),0)) 

要檢測任何模式匹配,如TRUEFALSE(作爲數組公式輸入):

=SUM(IFERROR(MATCH({"\my\path\?","\my\*\a"},A1,0),0))>0 
+0

對不起,我不太瞭解數組公式。你能否詳細說明一下?如果在一個單元格中的內容是\ my \ path \ x或\ my \ xx \ a,那麼當我在另一個單元格中應用此函數時,它應該產生1 – bxx

+1

使用公式'= SUM(IFERROR(MATCH({「\我的\路徑\?「,」\ my \ * \ a「},A1,0),0))'(作爲數組公式輸入:即按Ctrl-Shift-Enter鍵完成輸入一起,而不僅僅是「輸入」)。這將返回公式中匹配'A1'值的模式數。例如,如果'A1' ='\ my \ path \ x'或'\ my \ xx \ a',它會返回'1'。如果'A1' ='\ my \ path \ a'它返回'2',因爲該字符串匹配_both_模式。 –

+0

謝謝你。很有幫助。 – bxx

相關問題