Count number of times a list contiguously appears in another list?

For example, function [1; 2] [1; 2; 3; 1; 2] should return 2. function [A; A] [A; A; A; A; A] should return 4.

I know I need a helper function. I'm thinking the function can check to see if the sequence is contiguous. But I'm lost on how to implement. This is what I have so far:

let rec mch (seq: string list) (actlist: string list) : bool = 
  begin match seq, actlist with
  | [], _ -> true
  | h1::tl1, h2::tl2 -> 

The main function should have the header:

let rec function (seq: string list) (actlist: string list) : int =