Encontrar palavras estritamente começando com $, Regex C #
-
03-07-2019 - |
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?
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.