Проблема с регулярным выражением для получения подстроки в данных, разделенных двоеточием - PullRequest
0 голосов
/ 19 февраля 2010

Я использую регулярное выражение, которое получает подстроку, связанную с соответствием то есть

"(MAC:[A-Z0-9]{12})"

Это регулярное выражение найдет вхождения MAC: (некоторые символы) в строке. Это регулярное выражение работает для символов меньше 10, т.е.

 "(MAC:[A-Z0-9]{8})"   -   WORKS

but,

 "(MAC:[A-Z0-9]{8})"   -   THROWS EXCEPTION

Любая помощь приветствуется относительно того же.

РЕДАКТИРОВАТЬ : я использую что-то вроде этого:

MatchCollection macName = Regex.Matches(otherdata,
                                        @"(MAC:[A-Z0-9]{10})+",
                                        RegexOptions.IgnoreCase);

Чтобы извлечь символы после MAC:

"ADMIN:1EXT:0NOR:0OUT:1PRI:1BAT:1MOD:1MAC:BFEBFBFF000006FB00:1E:37:54:AE:C8"

Я должен получить строку после использования регулярного выражения:

MAC:BFEBFBFF000006FB00:1E:37:54:AE:C8

Надеюсь, я четко объяснил.

Ответы [ 2 ]

0 голосов
/ 18 августа 2011

Или вот этот:

"(MAC:[\d\w:]+?[\d\w:]*)"

Этот делает дополнительную проверку, чтобы убедиться, что это хорошее соответствие.

0 голосов
/ 19 февраля 2010

Попробуйте это:

"(MAC:[A-Z0-9]{12})+"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...