#include <bits/stdc++.h>
using namespace std;
int main() {
  int N, Q;
  char t, d;
  string s;
  map<char, vector<int>> idx;
  vector<int> golems;
  cin >> N >> Q >> s;
  golems.assign(s.size(), 1);
  for (int i = 0; i < s.size(); i++) {
    idx[s[i]].push_back(i);
  }
  for (int i = 0; i < Q; i++) {
    cin >> t >> d;
    for (int j = 0; j < idx[t].size(); j++) {
      if (d == 'L') {
        if (idx[t][j] - 1 >= 0) golems[idx[t][j] - 1] += golems[idx[t][j]];
        golems[idx[t][j]] = 0;
      } else {
        if (idx[t][j] + 1 < N) golems[idx[t][j] + 1] += golems[idx[t][j]];
        golems[idx[t][j]] = 0;
      }
    }
  }
  int ans = 0;
  for (int i = 0; i < N; i++) ans += golems[i];
  cout << ans << "\n";
  return 0;
}
