ВГОРУ

Snake Case Функція для LibreOffice Calc

SNAKECASE() Опис

Функція SNAKECASE() призначена для об'єднання слів через підкреслення, тобто в результаті повертається одне слово, наприклад «snake_case_function».

Snake Case розбиває рядок слів, розділених пробілами, дефісом, нижнім підкресленням або зміною регістру букв, потім перетворює ці слова в нижній регістр та об’єднує їх за допомогою розділювача підкреслення ("_").

Функція SNAKECASE() може бути корисною в програмуванні для конвертації імен змінних відповідно до прийнятих правил написання коду (coding conventions).


StarBASIC код для функції Snake Case

Ось код макросу для створення користувацької функції, яка може перетворювати текст на окремі слова розділені нижнім підкресленням (Snake Case) в програмі LibreOffice Calc.

Відкрийте меню Tools - Macros - Edit Macros..., виберіть Module1 і скопіюйте наведений нижче текст до модуля:

Function SnakeCase(ByVal str As String) As String
  'moonexcel.com.ua
  Dim words As Variant
  Dim FCalc  As Object
  
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess")
  
  str = Replace(str,"-"," ")
  str = Replace(str,"_"," ")  
  str = FCalc.callFunction("TRIM", Array(str))  
  str = FCalc.callFunction("REGEX", Array(str,"([:lower:])([:upper:])","$1 $2","g"))
    
  str = LCase(str)
  words = Split(str, " ")            
    
  SnakeCase = Join(words,"_")
End Function

Потім закрийте Macro Editor, поверніться до LibreOffice Calc і використовуйте нашу нову функцію в будь-якій клітинці.

Використання розширення

Ви також можете скористатись функцією SNAKECASE() встановивши безкоштовне розширення YouLibreCalc.oxt або його повнофункціональну версію YLC_Utilities.oxt.

Після цього, дана функція буде доступна у всіх файлах, які будуть відкриті в LibreOffice Calc.