ВГОРУ

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

KEBABCASE() Опис

Функція KEBABCASE() призначена для об'єднання слів через дефіс, тобто в результаті повертається одне слово, наприклад «kebab-case-function».

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

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


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

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

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

Function KebabCase(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," ")              
      
  KebabCase = Join(words,"-")  
End Function

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

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

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

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