Nos campos do CRM, o texto raramente está no formato necessário: um endereço em uma única linha em vez de cidade e rua separadas, uma lista de itens separados por vírgula, a descrição de um lead com marcação HTML vinda de um e-mail. As ações nativas dos processos de negócios do Bitrix24 inserem o valor do campo por inteiro — não há como recortá-lo, juntá-lo com outro ou limpá-lo. Quatro robôs cobrem as operações básicas com strings: dividir por separador, juntar valores com um separador, recortar uma substring, remover tags HTML.

Por que um processo de negócios precisa de operações com strings?

Situações típicas. De um formulário chegou o endereço «Moscou, Tverskaya, 1» — para a segmentação só é preciso a cidade. Uma notificação precisa reunir em uma só linha o nome, o valor e a origem do negócio. O nome de uma empresa vindo de uma importação começa com «www.» ou com um prefixo que atrapalha a busca e estraga os documentos. Um lead foi criado a partir de um e-mail — na descrição sobraram tags de marcação. O designer de processos de negócios sabe inserir valores de campos e de variáveis em um texto, mas não transformá-los: não consegue dividir por separador, recortar um trecho nem limpar a marcação. Cada operação abaixo é um robô com uma única ação, e todos eles se combinam livremente em uma cadeia.

Como dividir uma string por um separador?

O robô «Dividir string por separador» recebe a string de origem e o separador — vírgula, ponto e vírgula, espaço, qualquer caractere ou combinação de caracteres. Saída: as partes da string como valor múltiplo e a quantidade delas. A string «Moscou, Tverskaya, 1» com o separador «vírgula com espaço» dará três partes: cidade, rua e número. As partes são gravadas em uma variável múltipla do processo ou em campos separados — por exemplo, a cidade vai para o próprio campo, usado em filtros e relatórios. A quantidade de partes é útil em uma condição: se o endereço foi dividido em menos de três partes, o formato é inesperado e é melhor mostrar o card ao gerente do que preencher os campos às cegas.

Como juntar valores em uma única string?

A operação inversa. O robô «Juntar valores com separador» recebe uma lista múltipla de valores, o separador e a opção «pular valores vazios». Saída: uma única string. Caso típico: montar um nome legível para o negócio ou o texto de uma notificação a partir de cidade, origem e plano — «Moscou · site · Profi». A opção de pular valores vazios resolve o problema eterno desse tipo de junção: se o plano do lead não estiver preenchido, sem ela o resultado seria «Moscou · site · » com um separador solto no final, e com ela — uma string limpa de duas partes. O resultado é gravado no nome do negócio, em um comentário ou no texto de uma notificação ao gerente.

Como recortar uma substring de um texto?

O robô «Recortar string» remove da string de origem todas as ocorrências de uma substring informada. Entrada: a string de origem e o trecho a recortar; saída: o resultado. Exemplos: remover «www.» do endereço de um site antes de gravá-lo no campo, recortar o prefixo «ME » do nome de uma empresa para os documentos, remover uma marcação interna do assunto de um e-mail antes de criar uma tarefa. É importante lembrar das «todas as ocorrências»: se o trecho aparecer três vezes na string, as três serão removidas — não há modo parcial. Para substituições mais complexas — por padrão, com grupos e condições — existe o robô de formatação por expressão regular; aqui resolve-se o caso mais frequente: remover um trecho conhecido sem padrões.

Como remover tags HTML de um texto?

Um lead foi criado a partir de um e-mail ou de um formulário — na descrição há tags de parágrafos, quebras de linha e links. Você não consegue inserir esse texto em um documento, SMS ou tarefa. O robô «Remover tags HTML do texto» remove da string todas as tags, comprime os espaços extras que ficaram depois delas e, conforme a opção, decodifica as entidades HTML — e-comerciais, aspas e espaços não separáveis codificados viram caracteres normais. Entrada: a string de origem e a opção de decodificação; saída: o texto limpo. Receita: o processo de criação de lead a partir do e-mail passa a descrição pelo robô e grava o texto limpo no comentário — o gerente lê o e-mail sem a marcação, e os modelos de documentos recebem texto normal, sem fragmentos de tags.

Conclusão

Quatro robôs — quatro operações: «Dividir string por separador», «Juntar valores com separador», «Recortar string», «Remover tags HTML do texto». Cada um faz uma única ação e se combina com os demais: dividir o endereço, pegar a cidade, montar o nome do negócio. Todos estão no catálogo de robôs de texto e se instalam gratuitamente pelo Bitrix24.Market. Não há a operação com strings que você precisa? Descreva a tarefa, criamos o robô de graça e o adicionamos à biblioteca comum.