#include <bits/stdc++.h>
char str[100000];
int fb['z' + 1]['z' + 1] = {0};
int main() {
  int last['z' + 1] = {0};
  int i, j, n, m;
  char fbpair[3];
  scanf("%s", str);
  scanf("%d", &n);
  for (; n; n--) {
    scanf("%s", fbpair);
    fb[fbpair[0]][fbpair[1]] = 1;
    fb[fbpair[1]][fbpair[0]] = 1;
  }
  for (i = 0; str[i]; i++) {
    m = 0;
    for (j = 'a'; j <= 'z'; j++)
      if (fb[j][str[i]] == 0 && last[j] > m) m = last[j];
    last[str[i]] = m + 1;
  }
  n = i;
  m = 0;
  for (i = 'a'; i <= 'z'; i++)
    if (last[i] > m) m = last[i];
  printf("%d\n", n - m);
  return 0;
}
