Bitbybit Docs
    Preparing search index...

    Class TextBitByBit

    Trabalhar com texto: dividir, juntar, pesquisar, aparar, preencher, mudar a capitalização, expressões regulares e formatação com marcadores de posição. vectorChar e vectorText transformam texto em caminhos de linhas desenhados com uma fonte de traços simples, para que as palavras possam tornar-se geometria. As posições no texto contam a partir de 0.

    Index

    Constructors

    create

    • Passa um texto adiante sem alteração, para que um valor possa receber um nome e ser reutilizado.

      Exemplo: 'Hello World' -> 'Hello World'

      Parameters

      Returns string

      O mesmo texto

    query

    • Indica se um texto contém um texto de pesquisa.

      Exemplo: 'hello world' inclui 'world' -> true

      Parameters

      Returns boolean

      True quando o texto procurado ocorre nele

      const has = bitbybit.text.includes({ text: "hello world", search: "world" });
      
    • Indica se um texto começa com um texto de pesquisa.

      Exemplo: 'hello world' começa com 'hello' -> true

      Parameters

      Returns boolean

      True quando o texto começa por ele

      const starts = bitbybit.text.startsWith({ text: "hello world", search: "hello" });
      
    • Indica se um texto termina com um texto de pesquisa.

      Exemplo: 'hello world' termina com 'world' -> true

      Parameters

      Returns boolean

      True quando o texto termina com ele

      const ends = bitbybit.text.endsWith({ text: "hello world", search: "world" });
      
    • Encontra onde um texto de pesquisa ocorre pela primeira vez, contando caracteres a partir de 0, ou -1 quando não ocorre.

      Exemplo: 'hello world' a procurar 'world' -> 6

      Parameters

      Returns number

      A posição da primeira ocorrência, ou -1

      const at = bitbybit.text.indexOf({ text: "hello world", search: "world" });
      
    • Encontra onde um texto de pesquisa ocorre pela última vez, contando caracteres a partir de 0, ou -1 quando não ocorre.

      Exemplo: 'hello world hello' a procurar 'hello' -> 12

      Parameters

      Returns number

      A posição da última ocorrência, ou -1

      const at = bitbybit.text.lastIndexOf({ text: "hello world hello", search: "hello" });
      
    • Lê o carácter numa posição, a contar de 0.

      Exemplo: 'hello' em 1 -> 'e'

      Parameters

      Returns string

      O caráter, ou um texto vazio quando a posição está fora do texto

      const second = bitbybit.text.charAt({ text: "hello", index: 1 });
      
    • Conta os caracteres de um texto.

      Exemplo: 'hello' -> 5

      Parameters

      Returns number

      O número de carateres

    • Indica se um texto está vazio ou contém apenas espaços em branco.

      Exemplo: ' ' -> true, 'a' -> false

      Parameters

      Returns boolean

      True quando não há nada além de espaços em branco

    regex

    • Indica se uma expressão regular corresponde em algum sítio de um texto.

      Exemplo: 'hello123' contra '[0-9]+' -> true

      Parameters

      Returns boolean

      True quando o padrão corresponde

      const hasDigits = bitbybit.text.regexTest({ text: "hello123", pattern: "[0-9]+", flags: "" });
      
    • Encontra as partes de um texto a que uma expressão regular corresponde.

      Com o indicador g todas as correspondências são listadas; sem ele só a primeira correspondência e os seus grupos de captura. Nenhuma correspondência dá null. Exemplo: 'hello123world456' contra '[0-9]+' com 'g' -> ['123', '456']

      Parameters

      Returns string[]

      As correspondências, ou null quando não há nenhuma

      const numbers = bitbybit.text.regexMatch({ text: "hello123world456", pattern: "[0-9]+", flags: "g" });
      
    • Substitui aquilo a que uma expressão regular corresponde por outro texto.

      Com o indicador g todas as correspondências são substituídas; sem ele só a primeira. Exemplo: 'hello123world456' contra '[0-9]+' com 'g', substituído por 'X' -> 'helloXworldX'

      Parameters

      Returns string

      O texto com as substituições feitas

      const clean = bitbybit.text.regexReplace({ text: "hello123world456", pattern: "[0-9]+", flags: "g", replaceWith: "X" });
      
    • Encontra onde uma expressão regular corresponde pela primeira vez, contando caracteres a partir de 0, ou -1 quando não corresponde.

      Exemplo: 'hello123' contra '[0-9]+' -> 5

      Parameters

      Returns number

      A posição da primeira correspondência, ou -1

      const at = bitbybit.text.regexSearch({ text: "hello123", pattern: "[0-9]+", flags: "" });
      
    • Corta um texto em pedaços onde quer que uma expressão regular corresponda; as próprias correspondências são descartadas.

      Exemplo: 'a1b2c3' dividido por '[0-9]+' -> ['a', 'b', 'c', '']

      Parameters

      Returns string[]

      As partes, por ordem

      const letters = bitbybit.text.regexSplit({ text: "a1b2c3", pattern: "[0-9]+", flags: "" });
      

    transform

    • Corta um texto em pedaços onde quer que ocorra um separador; o próprio separador é descartado.

      Exemplo: 'apple,banana,cherry' dividido por ',' -> ['apple', 'banana', 'cherry']

      Parameters

      Returns string[]

      As partes, por ordem

      const parts = bitbybit.text.split({ text: "apple,banana,cherry", separator: "," });
      
    • Substitui todas as ocorrências de um texto de pesquisa por outro texto.

      Exemplo: 'hello hello' a substituir 'hello' por 'hi' -> 'hi hi'

      Parameters

      • inputs: TextReplaceDto

        O texto, o que procurar e o que colocar no seu lugar

      Returns string

      O texto com as substituições feitas

      const greeting = bitbybit.text.replaceAll({ text: "hello hello", search: "hello", replaceWith: "hi" });
      
    • Une uma lista de textos num só, com um separador entre vizinhos.

      Exemplo: ['apple', 'banana', 'cherry'] unidos por ', ' -> 'apple, banana, cherry'

      Parameters

      Returns string

      O texto junto

      const line = bitbybit.text.join({ list: ["apple", "banana"], separator: ", " });
      
    • Transforma qualquer valor em texto, tal como o JavaScript o imprime.

      Exemplo: 42 -> '42', [1, 2] -> '1,2'

      Type Parameters

      • T

      Parameters

      Returns string

      O valor como texto

    • Transforma cada item de uma lista em texto, tal como o JavaScript o imprime.

      Exemplo: [1, 2.5, true] -> ['1', '2.5', 'true']

      Type Parameters

      • T

      Parameters

      Returns string[]

      Um texto por item, por ordem

    • Preenche marcadores numerados num texto com valores: {0} recebe o primeiro valor, {1} o segundo, e assim por diante.

      Um marcador sem valor é deixado tal como está. Exemplo: 'Point: ({0}, {1})' com [10, 5] -> 'Point: (10, 5)'

      Parameters

      • inputs: TextFormatDto

        O texto com marcadores de posição e os valores a preencher

      Returns string

      O texto preenchido

      const label = bitbybit.text.format({ text: "Point: ({0}, {1})", values: ["10", "5"] });
      
    • Toma os caracteres de uma posição inicial até, mas não incluindo, uma posição final.

      Um início maior do que o fim troca os dois, e posições negativas contam como 0. Exemplo: 'hello world' de 0 a 5 -> 'hello'

      Parameters

      Returns string

      Os carateres nesse intervalo

      const word = bitbybit.text.substring({ text: "hello world", start: 0, end: 5 });
      
    • Toma os caracteres de uma posição inicial até, mas não incluindo, uma posição final.

      Ao contrário de substring, uma posição negativa conta a partir do fim do texto. Exemplo: 'hello world' de 0 a 5 -> 'hello'; de -5 -> 'world'

      Parameters

      Returns string

      Os carateres nesse intervalo

      const tail = bitbybit.text.slice({ text: "hello world", start: 6, end: 11 });
      
    • Remove espaços, tabulações e quebras de linha de ambas as extremidades de um texto.

      Exemplo: ' hello ' -> 'hello'

      Parameters

      Returns string

      O texto aparado

    • Remove espaços, tabulações e quebras de linha do início de um texto.

      Exemplo: ' hello ' -> 'hello '

      Parameters

      Returns string

      O texto sem espaços iniciais

    • Remove espaços, tabulações e quebras de linha do fim de um texto.

      Exemplo: ' hello ' -> ' hello'

      Parameters

      Returns string

      O texto sem espaços finais

    • Acrescenta um texto de preenchimento à frente até o texto atingir um comprimento; um texto que já tenha esse comprimento é deixado em paz.

      Exemplo: 'x' até ao comprimento 3 com 'a' -> 'aax'

      Parameters

      • inputs: TextPadDto

        O texto, o comprimento a atingir e o preenchimento

      Returns string

      O texto preenchido

      const padded = bitbybit.text.padStart({ text: "7", length: 3, padString: "0" });
      
    • Acrescenta um texto de preenchimento atrás até o texto atingir um comprimento; um texto que já tenha esse comprimento é deixado em paz.

      Exemplo: 'x' até ao comprimento 3 com 'a' -> 'xaa'

      Parameters

      • inputs: TextPadDto

        O texto, o comprimento a atingir e o preenchimento

      Returns string

      O texto preenchido

      const padded = bitbybit.text.padEnd({ text: "x", length: 3, padString: "a" });
      
    • Transforma todas as letras em maiúsculas.

      Exemplo: 'hello' -> 'HELLO'

      Parameters

      Returns string

      O texto em maiúsculas

    • Transforma todas as letras em minúsculas.

      Exemplo: 'HELLO' -> 'hello'

      Parameters

      Returns string

      O texto em minúsculas

    • Transforma o primeiro carácter em maiúscula e deixa o resto tal como está.

      Exemplo: 'hello world' -> 'Hello world'

      Parameters

      Returns string

      O texto com o seu primeiro caráter em maiúscula

    • Transforma o primeiro carácter em minúscula e deixa o resto tal como está.

      Exemplo: 'Hello World' -> 'hello World'

      Parameters

      Returns string

      O texto com o seu primeiro caráter em minúscula

    • Repete um texto um número de vezes, de ponta a ponta.

      Exemplo: 'ha' três vezes -> 'hahaha'

      Parameters

      Returns string

      O texto repetido

      const laugh = bitbybit.text.repeat({ text: "ha", count: 3 });
      
    • Inverte a ordem dos caracteres.

      Exemplo: 'hello' -> 'olleh'

      Parameters

      Returns string

      O texto invertido

    • Une vários textos num só sem nada entre eles.

      Exemplo: ['hello', ' ', 'world'] -> 'hello world'

      Parameters

      Returns string

      O texto junto

      const sentence = bitbybit.text.concat({ texts: ["hello", " ", "world"] });
      

    vector

    • Desenha um carácter como caminhos de linha com um tipo de letra de traço simples.

      Os caminhos assentam planos no plano XZ, escalados para que o carácter tenha height de altura, e são devolvidos com a largura e a altura do carácter. Um carácter desconhecido é desenhado como um ponto de interrogação. Exemplo: 'A' com altura 10 -> os traços de um A, com 10 unidades de altura

      Parameters

      • inputs: VectorCharDto

        O caráter, a sua altura e os seus deslocamentos

      Returns VectorCharData

      A largura, a altura e os caminhos dos traços do caráter como listas de pontos

      const letter = bitbybit.text.vectorChar({ char: "A", height: 10, xOffset: 0, yOffset: 0, extrudeOffset: 0 });
      
    • Desenha um texto, com quebras de linha, como caminhos de linha com um tipo de letra de traço simples.

      Cada linha volta como os seus caracteres com os seus caminhos, dispostos planos no plano XZ com a altura, o espaçamento e o alinhamento dados; centerOnOrigin põe o meio do bloco na origem. Exemplo: 'Hello' com altura 10 -> cinco caracteres com os seus traços

      Parameters

      Returns VectorTextData[]

      Uma entrada por linha, cada uma com os seus carateres e os caminhos dos seus traços

      const lines = bitbybit.text.vectorText({
      text: "Hello\nWorld",
      height: 10,
      align: Bit.Inputs.Base.horizontalAlignEnum.center,
      centerOnOrigin: true,
      });