#include <bits/stdc++.h>
using namespace std;
char s[100005], ss[20][5];
char s2[100005];
int arr[100005], len2 = 0, n;
stack<char> st;
bool f(char a, char b) {
  int i;
  for (i = 0; i < n; i++) {
    if (ss[i][0] == a && ss[i][1] == b) return 1;
    if (ss[i][1] == a && ss[i][0] == b) return 1;
  }
  return 0;
}
int main() {
  scanf("%s", &s);
  int i, j;
  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    scanf("%s", &ss[i]);
  }
  int len = strlen(s);
  int ans = 0;
  st.push('!');
  for (i = 0; i < len; i++) {
    if (f(st.top(), s[i])) {
      st.pop();
      ans++;
      if (!f(st.top(), s[i])) st.push('!');
    } else
      st.push(s[i]);
  }
  printf("%d\n", ans);
  return 0;
}
