I created a regex that uses alternation (|) to match all the different patterns:
1. For emails: [a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4} matches the three email formats
2. For phone numbers: I included patterns for both international format (+1-123-456-7890) and space-separated format (01234 567890)
3. For dates: I included patterns for both YYYY-MM-DD and DD/MM/YYYY formats
4. For IDs with hyphens: [A-Z]{3}-\d{3}-[a-z]{3} matches ABC-123-xyz pattern
5. For IDs with special characters: I created specific patterns for each of the three special character formats ($, #, @)

The pattern is designed to be precise, matching only the exact target strings and nothing else.