#include <bits/stdc++.h>
using namespace std;
int main() {
  bool c = true;
  int N, Q, size = 0;
  string S;
  cin >> N >> Q >> S;
  vector<char> t(Q), vstr, d(Q);
  vector<int> l, r, vint;
  for (int i = 0; i < Q; i++) {
    cin >> t.at(i) >> d.at(i);
    for (int j = 0; j < size; j++) {
      if (vstr.at(j) == t.at(i)) {
        if (d.at(i) == 'L') {
          vint.at(j)--;
          if (vint.at(j) < l.at(j)) l.at(j) = vint.at(j);
        } else {
          vint.at(j)++;
          if (vint.at(j) > r.at(j)) r.at(j) = vint.at(j);
        }
        c = false;
        break;
      }
    }
    if (c) {
      size++;
      vstr.push_back(t.at(i));
      if (d.at(i) == 'L') {
        l.push_back(-1);
        r.push_back(0);
        vint.push_back(-1);
      } else {
        r.push_back(1);
        l.push_back(0);
        vint.push_back(1);
      }
      c = true;
    }
  }
  int ans = N;
  for (int i = 1; i < N + 1; i++) {
    for (int j = 0; j < size; j++) {
      if (vstr.at(j) == S[i - 1]) {
        if (i + l.at(j) < 1 || i + r.at(j) > N) ans--;
      }
    }
  }
  cout << ans;
}
