Breve Visão Geral
Expressões regulares, conhecidas como regex, permitem manipular texto dinâmico que aparece no conteúdo do WalkMe ou que faz parte de processos automatizados. Usando A sintaxe regex é ideal para situações em que os valores de texto dinâmicos que você está usando contêm os valores desejados e outros caracteres que não são relevantes.
Saiba mais sobre regex.
Casos de uso
Os casos de uso do Regex incluem o seguinte:
- Quando o texto dinâmico incluir o nome e o sobrenome do usuário, use regex para selecionar e exibir apenas o primeiro nome em um ShoutOut ou balão para torná-lo mais pessoal (exibição visual)
- Preencha automaticamente o endereço de e-mail dos usuários (quando fizer parte de um objeto maior com dados adicionais) em um campo de texto ao carregar a página (automação)
- Selecione apenas parte de um URL ao usar texto dinâmico para levar automaticamente o usuário para uma página diferente
Exemplo de caso de uso
Um cliente deseja ter uma Dica Inteligente exibida quando um elemento na tela mostrando uma data for anterior ou igual a 31 de janeiro de 2019.
Como resolver o problema:
- Descreva os possíveis valores que você deseja combinar e os valores que você não deseja combinar
- Dividir o problema em vários grupos de regras que, quando combinadas, abrangem todos os valores que você deseja combinar
- Neste exemplo, temos quatro padrões diferentes que queremos combinar:
- Quaisquer datas durante janeiro de 2019
- Qualquer data entre 1º de janeiro de 2010 e 31 de dezembro de 2018
- Qualquer data entre 1º de janeiro de 2000 e 31 de dezembro de 2009
- Qualquer data entre 1º de janeiro de 0000 e 31 de dezembro de 1999
- Forme as regras para lidar com cada um dos casos acima e teste-as:
- ^Jan[\s]+[0123]?[\d]+,[\s]+2019$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]$
- ^[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- Depois de testar cada grupo, combine em uma string usando o tubo (remova o excesso de ^ e $s)
- ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- Implemente o RegEx acima na regra de segmento de exibição do SmartTip usando:
- OSE/jQuery > Texto é por Expressão Regular > ^Jan[\s]+[0123]?[\d]+,[\s]+2019|[\w]+[\s]+[0123]?[\d]+,[\s]+201[012345678]|[\w]+[\s]+[0123]?[\d]+,[\s]+200[0123456789]|[\w]+[\s]+[0123]?[\d]+,[\s]+[01][\d]{3}$
- Resultado: o SmartTip será exibido quando o valor de texto do elemento for de 1º de janeiro de 2000 a 31 de janeiro de 2019.
Como Funciona
Comece com uma tag regex de abertura contendo a expressão regular em si, seguida pela declaração à qual deseja aplicar a expressão regular e termine com uma tag regex de fechamento:
[regex=" {the regex itself} "] {text for executar o regex em} [/regex]
Note
- {text to perform the regex on} pode ser uma mistura de vários valores de texto dinâmicos, como variáveis, cookies, WalkMe Data e jQuery, além de valores estáticos
- A maioria, se não todos, os usos do texto no regex serão dinâmicos, com uso mínimo de valores de texto estático
Uso suportado de regex no WalkMe
Tipos de regras do mecanismo de regras:
- Elemento selecionado
- URL
- Atributos do usuário
- jQuery
- Elemento na tela
- Variável (dados do usuário)
BBCode para conteúdo do WalkMe:
- Exibição visual
- Etapa Smart Walk-Thru
- ShoutOut
- Orientação SmartTip
- Pesquisa
- Automação
- Etapa automática Smart Walk-Thru (preencher texto e selecionar valor da lista)
- Etapa de redirecionamento Smart Walk-Thru
Estrutura Regex
Demarcadores de início e fim
Quando usado fora dos colchetes, ^ denota o início de um regex e é usado com o $ para denotar o fim do regex.
Exemplos
- Regex em um pacote de extensão: ^https:\/\/ecolab\.my\.salesforce\.com.*|^https:\/\/ecolab.*na.*\.visual\.force\.com.*
- Regex no mecanismo de regras: Dados do usuário → Variável → departamento → É por Expressão Regular → ^sales$
Match de um único personagem
A forma mais básica de regex permitirá uma correspondência direta de personagens.
Listas e intervalos
[] pode ser usado para especificar uma lista de valores e, quando combinado com –, pode ditar um intervalo de valores que um caractere correspondente na string de destino pode ter.
Exemplos
- ^[dcr][ao][gt]$
- Corresponderá a "cão", "gato", "rato", "pano"
- O primeiro caractere deve ser d, c ou r; o segundo caractere deve ser a ou o, e o terceiro caractere deve ser g ou t
- ^[a-z][0-9]$
- O primeiro caractere deve ser de um a z (minúsculo) e o segundo caractere deve ser de 0 a 9
Repetições
{3} e {#,#} podem ser usados para evitar a necessidade de digitar os mesmos padrões repetidamente dentro de um regex.
Exemplos
- ^[a-z]{3}$
- Corresponderá a três letras minúsculas em sequência, como "adf" ou "kzd"
- ^[a-z]{1,3}$
- Corresponderá a não menos de um e não mais de três dos caracteres anteriores, como "a", "am" e "abc", mas não "duct"
Wildcards
Estes são úteis se o texto na string de destino for dinâmico ou se o conteúdo não for importante. . corresponderá a qualquer caractere, * corresponderá a zero ou mais do padrão anterior e + corresponderá a um ou mais do padrão anterior.
Exemplos
- ^.*$
- Corresponde a zero ou mais caracteres e é útil para adicionar ao início e ao final de um regex (particularmente dentro de extensões), porque estamos interessados apenas em corresponder subdomínios
- ^a+b*c+$
- Corresponderá porque o + especifica que pelo menos um dos caracteres anteriores deve estar presente
Personagem de escape
O backslash \ denota que os caracteres que o seguem têm um significado especial.
Exemplos
- \.
- Representa um período e não um wildcard
- \/, \$
- \d e \D
- Corresponde ao caractere digit\não-digit
- \s e \S
- Corresponde aos caracteres whitespace\non-whitespace
- \w e \W
- Corresponde a caracteres alfanuméricos\não-alfanuméricos
Caractere de exclusão
Quando contido em [], ^ pode indicar que o caractere não deve estar presente na string de destino.
Exemplos
- ^[^abc]$
- Corresponderá a qualquer caractere único que não seja a, b ou c
- ^[^n-p]$
- Corresponderá a qualquer caractere único que não seja n, o ou p
- ^\w[^og]{2}$
- Combinará com abelhas e mar, mas não com tronco, pântano, nevoeiro, etc.
Olhar negativo
(?!) especificará que a seguinte String não deve estar presente no jogo e é útil para, por exemplo, evitar que uma extensão WalkMe seja injetada no iFrame errado.
Exemplos
- ^.*eu1\.visual\.force\.com\/(?!Console).*$
O tubo
| é o operador lógico "OR" no regex e especifica que uma string de destino pode corresponder a vários padrões.
Exemplos
- ^.*ctmstech\.roche\.com/eclinical.*|.*ctms-performance\.roche\.com.*|.*siebelctmsqa\.kau\.roche\.com.*$
Etapa de redirecionamento
Útil quando você deseja criar um URL de redirecionamento usando BBCode.
| https://app.[regex="\.(?<=\.)[a-zA-Z]*(?=\.)"][var]document.URL[/var][/regex].site.com/?cId=[regex=][jquery]INSERIR SELETOR JQUERY][/jquery][/regex]&pId=[regex=][jquery]INSERT JQUERY SELECTOR][/jquery][/regex]&r=/p/[regex=][jquery]INSERIR SELETOR JQUERY][/][/regex][/jquery]?tab=2&prId=asdf |
Exemplos
- URL de exemplo: https://app.test.site.com/?cId=12345&pId=67890&r=/p/67890?tab=2&prId=asdf
Usando ChatGPT para Regex no WalkMe
Comunidade WalkMe (WalkMe Community).