#include <iostream>
using namespace std;

int main(){
  int N,Q;
  cin >> N >> Q;
  cin >>const string s;
  char qs[N];
  char ds[N];

  int g[N];
	int vanish=0;

  for(int i=0;i<N;i++){
      g[i]=1;
  }
  for(int i=0;i<Q;i++){
   cin >> qs[i] >> ds[i];
  }

  for(int j=0;j<Q;j++){
      
		int i=0;
		if(qs[j]==s[i]){
		if(ds[j]=='L'){
			vanish+=g[i];
			g[i]=0;
		}
		else{
			g[i+1]+=g[i];
			g[i]=0;
		}
		}

		if(ds[j]=='L'){
    	for(int i=1;i<N-1;i++){
     	  if(qs[j]==s[i]){
					g[i-1]+=g[i];
					g[i]=0;
				}
			}
		}
		else{
    for(int i=1;i<N-1;i++){
      if(qs[j]==s[i]){
					g[i+1]+=g[i];
					g[i]=0;
				}
			}
		}

		i=N-1;
		if(s[i]==qs[j]){
		if(ds[j]=='L'){
			g[i-1]+=g[i];
			g[i]=0;
		}
		else if(ds[j]=='R'){
			vanish+=g[i];
			g[i]=0;
		}
		}
        if(vanish>=N){
break;
}
	}

  int gn=N-vanish;
	cout << gn;
}

