Я пишу регулярное выражение в golang для захвата хэштегов, которые могут появляться на разных языках. Например, очевидным является английский, но могут быть латинские или арабские пользователи, которые попытаются создать хэштеги, используя этот набор символов.
Мне известно имя класса символов Unicode, но как вы можете использовать несколько одновременно, не генерируя регулярные выражения для каждого?
пример кода:
r, err := regexp.Compile(`\B(\#[[:ascii:]]+\b)[^?!;]*`)
Это будет соответствовать "#hello #ذوق"
и выводить []string{#hello, #ذوق}
, но не будет совпадать только для "#ذوق"