Regex sub возвращает None - PullRequest
       6

Regex sub возвращает None

0 голосов
/ 03 октября 2018

Итак, я работаю с этой программой, которая принимает входные данные в формате JSON, а затем переходит к созданию данных из источника.Мы импортируем биржевые данные, однако иногда мы получаем что-то вроде 50 +.

. Используя библиотеку jsonpath-ng, другой разработчик сделал следующий маппер, включая подпрограмму для удаления нежелательных символов '+', так как мы не делаемхочу их.

{"quantity": "$..Stock.`sub(/\\\\+/, \\)`", "article_code": "$..Barcode"}

Проблема, с которой я сталкиваюсь, заключается в том, что она работает нормально, когда мы получаем количество, подобное 50+, оно просто преобразует его в 50, но когда мы получаем что-то вроде 3, топреобразует его в None.Кажется, я не могу найти способ предотвратить преобразование значений без «+» в None.

Кто-нибудь знает, как изменить его, чтобы он удалял «+», если он найден, а если нет?найден просто пусть будет вместо того чтобы поменять его на None?

1 Ответ

0 голосов
/ 03 октября 2018

В jsonpath-ng представляется преднамеренное решение о том, что если sub ничего не меняет, элемент преобразуется в None.Я нахожу это довольно загадочным.

В качестве обходного пути вы можете добавить + в конце строки и , а затем переписать его с помощью sub, что теперь всегда будет изменять его, не производящий None.

...