Pergunta

Eu preciso encontrar todos os jogos de palavra que estritamente começa com "$" e contém somente dígitos. Então eu escrevi

[$]\d+

que me deu 4 partidas para

$10 $10 $20a a$20

então eu pensei em usar limites de palavra usando \ b:

[$]\d+\b

Mas novamente combinado

a US $ 20 para mim.

Eu tentei

\b[$]\d+\b

mas eu falhou.

Eu estou procurando dizer, aceitar apenas se a palavra COMEÇA COM $ e é seguido por dígitos. Como eu digo isso começa com $, porque eu acho que \ b é torná-lo assumir limites de palavra que significa cercado dentro caracteres alfanuméricos.

Qual é a solução?

Foi útil?

Solução

Não é o melhor solução, mas isso deve funcionar. (Ele faz com o seu caso de teste)

(?<=\s+|^)\$\d+\b

Outras dicas

Você tentou

\ B \ $ \ d + \ b

Você estava perto, você só precisa escapar do $:

\B\$\d+\b

Veja o exemplo partidas aqui: http: // regexhero. net / tester /? id = 79d0ac3b-dd2c-4872-abb4-6a9780c91fc1

Tente com ^ \ $ \ d +

onde ^ denota o início de uma string.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top