регулярное выражение для преобразования названий состояний в сокращения

#regex #states #abbreviation

#регулярное выражение #состояния #сокращение

Вопрос:

Я работаю над проектом, который требует только использования регулярного выражения для преобразования названий состояний (должны быть нечувствительны к регистру) в их двухбуквенные сокращения.

Я не могу использовать какую-либо среду разработки или ссылаться на какие-либо базы данных или файлы xml или ini.

Пожалуйста, помогите!

Комментарии:

1. Существует только 51 состояние, 51 абревиатура, все произвольные. Обычно это первые 2 буквы в одном слове state, в двух словах state, это первая буква каждого слова. Но есть исключения.

2. Это странное и бессмысленное требование — можете ли вы подробнее объяснить, почему вам нужно решить проблему таким образом?

Ответ №1:

Поскольку в состояниях нет чего-то регулярного, регулярные выражения являются НЕПРАВИЛЬНЫМ инструментом. Я бы предложил создать новый проект.

Однако единственное решение (кроме глупых нелогичных взломов) — это хардкорить каждое состояние:

 s/Alabama/Al/
s/Alaska/Ak/
...
s/Wyoming/Wy/
  

Список состояний и их сокращений можно найти здесь.