Функция KEBABCASE() предназначена для объединения слов через дефис, то есть в результате возвращается одно слово, например
Kebab Case разбивает строку слов, разделенных пробелами, дефисом, нижним подчеркиванием или изменением регистра букв, затем превращает эти слова в нижний регистр и объединяет их с помощью тире-разделителя ("-").
Функция KEBABCASE() может быть полезна в программировании для конвертации имен переменных в соответствии с принятыми правилами написания кода
Вот код макроса для создания пользовательской функции, которая может преобразовывать текст в отдельные слова разделенные дефисом (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.