Получить самое левое совпадение вместо самого правогоC#

Место общения программистов C#
Ответить
Anonymous
 Получить самое левое совпадение вместо самого правого

Сообщение Anonymous »

У меня есть эта режим: < /p>

Код: Выделить всё

^\\.+, .+\\([0-9]+) - .[^\\]+(.*)
Мне нужно сопоставить число в нескольких путях, однако он возвращает самое правое совпадение, когда мне нужно, чтобы оно вернуло самое левое совпадение.
Примеры
  • Код: Выделить всё

    \\Folder 1\Folder 2\surname, forename\1234 - some really long name
    [*]\\Folder 1\Folder 2\surname, forename\1234 - some really long name\some folder\5678 - some other name
В обоих примерах мне нужно, чтобы оно соответствовало 1234, а не 5678. Перед числом может быть одна или несколько папок, и число может состоять из любого количества цифр. Однако оно всегда будет первой частью имени папки, и после номера всегда будет стоять знак «-».
Как изменить регулярное выражение, чтобы оно возвращало первое совпадение, а не последнее? Я использую код C#.

Подробнее здесь: https://stackoverflow.com/questions/797 ... right-most
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»