UB: C # Regex.Match возвращает всю строку вместо части при сопоставлении

Внимание! ЭтоNOT относится кЗадача регулярного выражения, сопоставляет всю строку вместо части

Всем привет. Я пытаюсь сделать

Match y = Regex.Match(someHebrewContainingLine, @"^.{0,9} - \[(.*)?\s\d{1,3}");

Помимо других ивритских причуд VS (как вы любите заменять) для [при редактировании строки?), Он иногда возвращает сумасшедшие результаты:

Match.Captures.Count = 1;
Match.Captures[0] = whole string! (not expected)
Match.Groups.Count = 2; (not expected)
Match.Groups[0] = whole string again! (not expected)
Match.Groups[1] = (.*)? value (expected).

Regex.Matches() действует так же.

Что может быть общей причиной такого поведения? Примечание: он не действует таким образом на простых тестовых строках, таких какRegex.Match("-היי45--", "-(.{1,5})-") (sample is displayed incorrectly!, please look to the page's source code)должно быть что-то с регулярным выражением, которое делает его жадным. Соответствующая строка содержит[ .... ]но простое добавление их в тестовую строку не вызывает того же эффекта.

Ответы на вопрос(3)

Ваш ответ на вопрос