Need an expression that can could how many times an item appear in a list

This feature request is based on Count how many times an item appear in a text list (not ref list)

Say I have a list LIST(“A”, “A”, “B”, “B”, “A”, “C”, “D”) and want to know how many “A” in the list.

Current expressions provided will strip any duplicate. So no way to count the item “A”

  • Using ‘-’ sign will remove any duplicate from the list. LIST(“A”, “A”, “B”, “B”, “A”, “C”, “D”) - LIST(“A”) will give me [“B”,“C”,“D”]. “B” only appeared one time.
  • INTERSECT remove duplicates too. INTERSECT({‘A’, ‘A’, ‘B’}, {‘A’, ‘A’, ‘C’,‘C’}) will return just ‘A’

IF(ISBLANK([LIST]), 0, COUNT(SPLIT(SUBSTITUTE([LIST] ,"SEARCH_TEXT","@"), "@"))-1)
If “SEARCH_TEXT” is not in the list, the split will still return one item list. So ‘-1’
But that will only work when 'SEARCH_TEXT" is unique. If any longer text having ‘SEARCH_TEXT’ as sub-string in the list, this solution will not work.