TOP

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.