1

Я ищу быстрое и грязное, а также легко повторяемое решение для удаления нечисловых данных из столбца в электронной таблице для импорта в базу данных MySQL. Пример:

(123)456-7890   fred  

Это все в одной ячейке в Microsoft Excel; один столбец. Записи не в стандартизированном формате.

  • Большинство строк не имеют дополнительного имени, но некоторые имеют. Название лишнее, мне нужны только цифры.
  • Для международного набора номера - я полагаю, но я не уверен - существует проблема с ведущими нулями, если номер телефона рассматривается как целое число. Но я не обеспокоен. Числовой результат в виде целого числа - это то, что мне нужно.
  • Номер телефона может быть в различных общих форматах, не обязательно соответствующих этому примеру из 13 символов, с кодом города в скобках и разделением дефиса для последних 4 цифр. Например, он может иметь начальную цифру, например 0 или 1, код города может быть разделен дефисом, а не заключен в скобки и т.д.

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

Я импортировал его в Google Spreadsheet, чтобы создать резервную копию. Я пользователь Linux, поэтому не имею доступа к нативному Microsoft Excel, как это было получено. Однако у меня есть доступ к Libre Office.

Я знаю, что я могу использовать регулярные выражения MySQL для этой цели, как описано в этой теме.

Что дает несколько вариантов. Я просто думал, что в LibreOffice или Google Spreadsheet может быть инструмент для этого. Я немного опасаюсь запускать его через веб-приложение, в зависимости от того, чье это веб-приложение.

Желаемый формат:

http://en.wikipedia.org/wiki/E.164

2 ответа2

1

вот и все, это для таблиц Google:

=SPLIT("(123)456-7890   fred"," ")

Вы можете расширить одну и ту же формулу для всех ваших записей

=SPLIT(A1," ")

Или вы можете попробовать что-то более сложное с формулой массива ...

на самом деле, если вы ищете операторы вставки или обновления, вы можете получить их из таблицы Google, я рекомендую это

https://docs.google.com/spreadsheets/d/1lWPRj_9uQW3BYUGUqKqW_NDlJ0VH0wUmf04ClVk6UEg/edit?usp=sharing

1

Альтернативой было бы использовать Find & Replace, чтобы заменить (ничем,) ни на что, ни на что (эта часть может быть сложной, если есть несколько разных типов символов, которые выглядят как тире, но если они все стандартные тире, это легко), и пространство ни с чем. Четыре символа, введенные в поле "Найти", кнопка "Заменить все", нажатая четыре раза, и готово.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .