【问题标题】:How to count occurences of a specific character in a Google Sheets cell appearing last in the cell as criterion?如何计算最后出现在单元格中的Google表格单元格中特定字符的出现次数作为标准?
【发布时间】:2019-10-05 13:39:10
【问题描述】:

如何计算某个特定字符在 Google 表格单元格中最后出现在单元格中的次数(并忽略在单元格最后出现的相同字符的其他出现次数)?

我正在尝试以下方法:

如果单元格 C1 包含句点(“.”)作为单元格 C1 中的最后一个字符, 然后返回 1 作为结果, 否则(如果单元格 C1 不包含句点,或者最后一个字符之前的句点没有任何句点作为单元格 C1 中的最后一个字符)返回 0 或空白或忽略。

到目前为止,我已经尝试过这个公式,但即使在最后一个字符之前也有句点,它也会返回 1:

=COUNTIF(C1,"*.*")

按照本教程:

这是我得到的结果的屏幕截图:

我还尝试在标准末尾添加空格, 但它会忽略它:

=COUNTIF(C1,"*.*")

这是我得到的第二个结果的屏幕截图:

我想要的结果是:

  1. 帮助。帮助。 (1) (仅计算最后一个“.”的出现)
  2. 帮助。帮助 (0)(忽略计数)
  3. 帮助。 (1)

计数标准特定于最后一个字符,最后一个字符是句点(“.”)

编辑:

我也看过 =RIGHT 函数,这让我思考:

How do I get the last character of a string using an Excel function?

我想出了这个,它似乎也可以工作:

=IF(RIGHT(C1, 1)=".","1","") 

返回一个字符串(“1”)

或

=IF(RIGHT(C1, 1)=".", 1, 0) 

(用于1和0的数值返回)

最后,在 OR 运算符的帮助下,我添加了如何选择这些字符以及最后一个字符:

("!") ("?") ("...") ("—")

=IF(OR(RIGHT(C1, 1)=".",RIGHT(C1, 1)="!",RIGHT(C1, 1)="?",RIGHT(C1, 1)="...",RIGHT(C1, 1)="—"),1,"")

【问题讨论】:

    标签: regex google-sheets array-formulas google-sheets-formula


    【解决方案1】:

    试试这样:

    =ARRAYFORMULA(IFERROR(IF(REGEXEXTRACT(A20:A, ".$")=".", 1, 0)))
    


    =ARRAYFORMULA(IF(LEN(A1:A), 
     IF(IFERROR(REGEXEXTRACT(A1:A, "\...$|\?$|!$|—$|\.$"))<>"", 1, 0), ))
    

    【讨论】:

    • 嗨@player0,非常感谢。似乎工作。我看了一下 =RIGHT 函数,它让我想到:stackoverflow.com/questions/4362418/… 我想出了这个,它似乎也可以工作:=IF(RIGHT(C1, 1)=".", "1","") [1]: i.imgur.com/yzQNka0.png 再次感谢您的快速回复。小心。附言。我确实投了赞成票,但由于声望不到 15,它尚未显示。
    • 感谢@player0 多年来为您提供的大力帮助。别管巨魔了。希望你今后一切顺利!你摇滚!
    • 刚刚达到我的每日投票配额,您的精彩回答。你是社区的礼物和巨大的价值。你非常好,妈妈,祝你一切顺利!
    • 哎呀!对于那个很抱歉。刚刚了解了反向规则。说得通。但我确实发现答案很棒。它不是为了膨胀。以后会更有耐心。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多