Как получить числовое значение, которое не заканчивается на %C#

Место общения программистов C#
Ответить
Anonymous
 Как получить числовое значение, которое не заканчивается на %

Сообщение Anonymous »

В счете-фактуре неизвестны различные произвольные тексты, ставки и суммы НДС, например

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

Arbitrary text 3.12 % Arbitrary text 4.23 Arbitrary text
или

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

Arbitrary text 5.67 Arbitrary text 8% Abitrary text
Как извлечь первую сумму, которая не заканчивается символом процента, с помощью C# 10 и .NET 10? Между суммой и текущим символом может быть или не быть пробел.
Для этих текстов результаты должны быть 4,23 и 5,67
Пробовал регулярное выражение -?[0-9]{1,3}(?:[_,.]?[0-9]{3})*[.,]?[0-9]{0,2}[^%], но оно возвращает 3.12
Regex101
Ответить

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

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

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

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

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