#include <bits/stdc++.h>
using namespace std;
class cell {
 public:
  int i;
  char c;
};
int main() {
  int N, Q;
  cin >> N >> Q;
  string s;
  cin >> s;
  vector<char> t(Q), d(Q);
  vector<vector<int>> ind(Q);
  for (int i = 0; i < Q; i++) {
    cin >> t.at(i);
    cin >> d.at(i);
  }
  for (int i = 0; i < Q; i++) {
    for (int j = 0; j < s.size(); j++) {
      if (t.at(i) == s.at(j)) {
        ind.at(i).push_back(j);
      }
    }
  }
  vector<int> g(N, 1);
  for (int i = 0; i < Q; i++) {
    for (int j = 0; j < ind.at(i).size(); j++) {
      int temp = g[ind.at(i).at(j)];
      g[ind.at(i).at(j)] = 0;
      if (d.at(i) == 'R') {
        if (ind.at(i).at(j) >= N - 1) continue;
        g[ind.at(i).at(j) + 1] += temp;
      } else {
        if (ind.at(i).at(j) <= 0) continue;
        g[ind.at(i).at(j) - 1] += temp;
      }
    }
  }
  int cnt = 0;
  for (int i = 0; i < N; i++) {
    cnt += g.at(i);
  }
  cout << cnt;
  return 0;
}
