BertTokenizer cannot properly tokenize words with dashes
### System Info

The `BertTokenizer` doesn't tokenize words with dashes correctly. I tried to use tokenizer for **Italian** and **English** languages and got unexpected results. This issue similar to https://github.com/huggingface/transformers/issues/5136. 

### Who can help?

@ArthurZucker

### Information

- [ ] The official example scripts
- [ ] My own modified scripts

### Tasks

- [ ] An officially supported task in the `examples` folder (such as GLUE/SQuAD, ...)
- [ ] My own task or dataset (give details below)

### Reproduction

```python3
from transformers import AutoTokenizer, BertTokenizer
model1 = 'cointegrated/rubert-tiny2'
model2 = 'Babelscape/wikineural-multilingual-ner' 
tokenizer = BertTokenizer.from_pretrained(model1, model_max_length=50)

>>> tokenizer.tokenize('so-called')
['so', '-', 'called']

>> tokenizer.tokenize('era il figlio di ghazi-ud-din haidar.')
['era', 'il', 'fi', '##gli', '##o', 'di', 'gh', '##azi', '-', 'ud', '-', 'din', 'hai', '##dar', '.']
```



### Expected behavior

Expected something like that:
```python3
>>> tokenizer.tokenize('so-called')
['so', '##-', '##called']

>> tokenizer.tokenize('era il figlio di ghazi-ud-din haidar.')
['era', 'il', 'fi', '##gli', '##o', 'di', 'gh', '##azi', '##-', '##ud', '##-', '##din', 'hai', '##dar', '.']
```