Функція SNAKECASE() призначена для об'єднання слів через підкреслення, тобто в результаті повертається одне слово, наприклад «snake_case_function».
Snake Case розбиває рядок слів, розділених пробілами, дефісом, нижнім підкресленням або зміною регістру букв, потім перетворює ці слова в нижній регістр та об’єднує їх за допомогою розділювача підкреслення ("_").
Функція SNAKECASE() може бути корисною в програмуванні для конвертації імен змінних відповідно до прийнятих правил написання коду (coding conventions).
Ось код макросу для створення користувацької функції, яка може перетворювати текст на окремі слова розділені нижнім підкресленням (Snake Case) в програмі LibreOffice Calc.
Відкрийте меню Tools - Macros - Edit Macros..., виберіть Module1 і скопіюйте наведений нижче текст до модуля:
Function SnakeCase(ByVal str As String) As String 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 і використовуйте нашу нову функцію в будь-якій клітинці.