Как добавить пользовательские символы в регулярное выражение?DevExpress Mask - PullRequest
0 голосов
/ 28 сентября 2019

У меня следующее регулярное выражение

(\w)+(,(\w)+)*

, состоящее только из символов и цифр, разделенных запятыми

test123,test3,test9

Я также хочу добавить такие символы, как @, #, $, которые можно использоватьв пределах \ w

, когда я пытаюсь [(\ w) $ @] не работать.Мне нужно использовать его в DevExpress TextEdit Mask.это говорит синтаксическая ошибка

http://prntscr.com/pbyq7p

1 Ответ

0 голосов
/ 29 сентября 2019

Внизу есть ответ, если эта страница , в котором упоминается, что специальные символы нельзя использовать в [].

Доступные символы перечислены в Тип маски:Расширенные регулярные выражения

Рекомендуется использовать группирование с чередованием для разделения класса символов и специального символа.

Вы можете попробовать

(\w+|[@#$]+)+(,(\w+|[@#$]+))+

Вчасти

  • ( Группа 1
    • \w+ Соответствие 1+ словам символов
    • | Или
    • [@#$]+ Соответствие 1+ раз любой из списка
  • )+ Закрыть группу и повторить 1+ раз
  • ( Группа 2
    • , Совпадение буквально
    • (\w+|[@#$]+) Тот же шаблон, что и для группы 1
  • )+ Закройте группу и повторите всю группу, начиная с , 1+ раз

Regex demo

Если ваши данные состоят только из символов az и только цифр, вы также можете попробовать

([a-z0-9@#$]+)+(,([a-z0-9@#$]+))+

Regex demo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...