Как делают я анализирую строку с GetOpt:: Долго:: GetOptions?

Я думаю, что самый простой способ сопоставления символов, таких как

\^$.?*|+()[

, использует классы символов изнутри R. Рассмотрим, как очистить заголовки столбцов от файла данных, которые могут содержать пробелы и пунктуацию characters:

> library(stringr)
> colnames(order_table) <- str_replace_all(colnames(order_table),"[:punct:]|[:space:]","")

Этот подход позволяет нам вводить классы символов в соответствие с символами пунктуации, в дополнение к символам пробелов, что вам обычно нужно было бы избежать с помощью \\ для обнаружения. Вы можете узнать больше о классах символов в этой таблице ниже, и вы также можете ввести ?regexp, чтобы узнать больше об этом.

https://www.rstudio.com/wp -поперечник / добавления / 2016/09 / RegExCheatsheet.pdf

7
задан mat 15 December 2008 в 16:36
поделиться

5 ответов

Проверьте опции парсинга раздела от произвольной строки в странице справочника для Getopt:: Долго, я думаю, что это делает точно, что Вы ищете.

15
ответ дан 6 December 2019 в 06:38
поделиться

Вместо того, чтобы разделить на пробеле, используйте встроенную функцию шарика. В дополнение к разделению на пробеле, который сделает стандартные расширения командной строки, затем возвращают список. (Например, * дал бы список файлов, и т.д.), я также рекомендую локализовать @ARG на общем принципе.

Кроме этого, это - единственный способ, которым можно сделать это, не переписывая GetOptions. (Очевидно я должен прочитать документацию более тщательно.)

7
ответ дан 6 December 2019 в 06:38
поделиться

Когда Вы используете Getopt:: Долго на чем-то другом, чем ввод данных пользователем, знать, что некоторые функции отличаются на основе переменной среды POSIXLY_CORRECT. Можно переопределить это с соответствующим вызовом для Конфигурирования.

Обязательная история POSIXLY_CORRECT.

0
ответ дан 6 December 2019 в 06:38
поделиться

Ничего себе!!!

Я думаю, что могу использовать оба из bentilly и ответов dinomite и сделать следующее:

  • используйте шарик для выполнения стандартных расширений командной строки
  • передайте массив после шарика к методу GetOptionsFromArray GetOpt:: Долго (см. здесь),

Код может посмотреть что-то как...

GetOptionsFromArray ([glob ($input_line)]);

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

5
ответ дан 6 December 2019 в 06:38
поделиться

На методы кажется, что GetOptionsFromArray и GetOptionsFromString были добавлены только в v2.36 и поскольку Murphy скажет, что у меня есть версия 2.35 только.

На данный момент я думаю, что должен буду жить с локальным @ARGV.

0
ответ дан 6 December 2019 в 06:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: