Я хочу извлечь знак валюты с помощью регулярного выражения в имени столбца таблицы, и это может быть (я делаю это для комбинаций долларов США (действительные - доллары США, доллары США, $) сейчас, но на самом деле, я должен повторить один список валюта из файла конфигурации и сделать общее регулярное выражение, а затем я буду использовать это регулярное выражение для анализа всех столбцов всех таблиц):
- Альфа USD -> USD
- Alpha_US $ _> US $
- Альфа ($) -> $
- Альфа _ $$ -> X
- Альфа {USD} -> USD
- Альфа (USDOCOLAND} -> X
- Альфа (несколько пробелов) USD -> USD
- USD Альфа -> USD
- Альфа USD USD -> USD
- USD -> USD
- Альфа USD $ -> X
X означает отсутствие извлечения
Все вышеперечисленные случаи взаимозаменяемы с любым действительным символом валюты, поступающим из файла конфигурации.
По сути, мне нужно ограничить слово, и оно может быть окружено специальными символами.
Я использую Scala и создаю Regex
объект, вызывая .r
в строке регулярного выражения
Я пытался использовать \b(US\$|USD)\b
для двух возможных комбинаций, но к нему можно добавить больше символов валюты, просматривая список из файла конфигурации. Проблема с этим из строки gfgh (US$f) (US$) (USD) USD
, она соответствует USD правильно, а для US$
, это соответствует 2-му слову, а не 4-му. Я пытаюсь обойти, чтобы получить US$
совпадение, как и ожидалось (3-е слово в моем примере).