DBatchScript

DBatchScript


Se você ainda não é um membro cadastre-se!
é fácil rápido e gratuito.

Existem centenas de scripts para quem é membro, alem disso você pode postar
os seus. e contar com nossa ajuda ou vice versa.

As categorias para os membros cadastrados são:

BATCH (WINDOWS).
(Espaço onde são postados os scripts que tenham funcionalidade completa) .

LINGUAGENS DIVERSSAS
(Onde tem vários códigos fonte de Delphi C/C++ asm e outros)

Participe você também estamos te esperado não perca mais tempo embarque nessa. Wink

[BAT] Obtendo o tamanho de uma string (length) Toolsc10

Participe do fórum, é rápido e fácil

DBatchScript

DBatchScript


Se você ainda não é um membro cadastre-se!
é fácil rápido e gratuito.

Existem centenas de scripts para quem é membro, alem disso você pode postar
os seus. e contar com nossa ajuda ou vice versa.

As categorias para os membros cadastrados são:

BATCH (WINDOWS).
(Espaço onde são postados os scripts que tenham funcionalidade completa) .

LINGUAGENS DIVERSSAS
(Onde tem vários códigos fonte de Delphi C/C++ asm e outros)

Participe você também estamos te esperado não perca mais tempo embarque nessa. Wink

[BAT] Obtendo o tamanho de uma string (length) Toolsc10
DBatchScript
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Translate the forum
English French
German Spain
Italian Dutch
Russian Japanese
Korean Arabic
Chinese Simplified Portuguese Brazil
Quem está conectado?
1 usuário online :: 0 registrados, 0 invisíveis e 1 visitante

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 153 em Ter Mar 09, 2021 2:43 am
Últimos assuntos
» CALL trava depois de vários ciclos?
[BAT] Obtendo o tamanho de uma string (length) EmptyDom Dez 10, 2023 10:47 am por Raffa

» [BAT] MegaNumeros simulador da mega sena
[BAT] Obtendo o tamanho de uma string (length) EmptySex Jan 17, 2020 7:00 pm por castioni24

» Agendador de tarefas
[BAT] Obtendo o tamanho de uma string (length) EmptySeg Ago 26, 2019 1:53 pm por Delmar Grande

» Remover duplicados e frases de um txt
[BAT] Obtendo o tamanho de uma string (length) EmptyTer Jul 23, 2019 7:00 pm por Delmar Grande

» Modificações do nome de usuário
[BAT] Obtendo o tamanho de uma string (length) EmptyQui maio 24, 2018 1:14 am por biopha

» [bat] Deletar uma linha de um lote de arquivo Txt, sem matar as linhas vazias
[BAT] Obtendo o tamanho de uma string (length) EmptyTer Ago 01, 2017 1:46 pm por sachadee

» Aulas de cmd
[BAT] Obtendo o tamanho de uma string (length) EmptySex Fev 24, 2017 4:44 pm por sachadee

» Fazer chat em rede domestica
[BAT] Obtendo o tamanho de uma string (length) EmptyDom Ago 14, 2016 12:19 am por Diego Augusto

» redirecionar comando for pra outro batch
[BAT] Obtendo o tamanho de uma string (length) EmptySex maio 27, 2016 1:29 pm por castioni24

Parceiros
Fórum grátis

Origem das visitas
[BAT] Obtendo o tamanho de uma string (length) Percent_0
Os membros mais ativos do mês
Nenhum usuário

Destaque do mês
Destaque do Fórum

Carregando avatar...
Obrigado pela colaboração!

[BAT] Obtendo o tamanho de uma string (length)

3 participantes

Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty [BAT] Obtendo o tamanho de uma string (length)

Mensagem por Delmar Grande Seg Ago 19, 2013 6:32 pm

Exemplo:

length.bat
Código:

@echo off
title Soma tamanho da string
set /p mystring="Degite um nome: "
set "myvar=%mystring%"
rem calcula o comprimento de uma string
set #=%myvar%
set length=0
:loop
if defined # (
    rem Encurtar a corda por um caractere
    set #=%#:~1%
    rem incrementa a string contando a variavel %length%
    set /A length += 1
    rem repetir ate string ser null
    goto loop
)
echo %myvar% tem %length% caracteres!
pause
Delmar Grande
Delmar Grande
Admineiro
Admineiro

Masculino
Mensagens : 532
Pontos : 1378
Data de inscrição : 25/06/2013
Idade : 33
Localização : Na frente do pc
Barra Respeito às Regras : Respeito às Regras 100%

https://dbatchscript.forumeiros.com

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por sachadee Seg Ago 19, 2013 7:27 pm

Outro jeito que eu escriver mas com o For :

Código:

@echo off
setlocal enabledelayedexpansion
Set /P $Tstring=Entrez une chaine de caractere:

for /l %%a in (0,1,9000) do (set $t=!$Tstring:~%%a,1!&if not defined $t (echo [carctere =] %%a&pause&exit /b))

endlocal

pause

E mais um que escrever o string e um arquivo e recupera o tamanho do arquivo :

Código:

@echo off
Set /P $Tstring=Entrez une chaine de caractere:
echo %$Tstring%>x&FOR %%z IN (x) DO (set /a $stl=%%~zz-2&del x&echo [LONGEUR =] %$stl%)
pause
E um presente de Sachadee : O mesmo com a geração automatica do quadro para o string

Código:

@echo off
setlocal enabledelayedexpansion enableextensions
Set /P $Tstring=Entrez une chaine de caractere:

ECHO %$Tstring%>x&FOR %%z IN (x) DO (cls&set /a length=%%~zz+1&del x&set $f=
                                     for /l %%a in (0,1,!length!) do (set $f=#!$f!)
                                     echo !$f!&echo # %$Tstring% #&echo !$f!)
endlocal
pause

Punk


Última edição por sachadee em Dom Dez 15, 2013 4:37 pm, editado 1 vez(es)
sachadee
sachadee
Moderadeiro
Moderadeiro

Masculino
Mensagens : 157
Pontos : 291
Data de inscrição : 28/06/2013
Localização : porai
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por MasterMC Dom Dez 15, 2013 3:38 pm

Utilizar setlocal enabledelayedexpansion enableextensions só pra poder concatenar alguns comandos em uma única linha no loop for é desperdício, o que seria poupado por conta dos 2 bytes de quebra de linha em um arquivo de texto é compensado pelo comando longo, ficando maior do que o código simplificado abaixo:

Código:
@echo off
set /p "c=str>> "
set /p none=%c%<nul>tmp
for %%z in (tmp) do set /a length=%%~zz
del tmp&echo strlen: %length%
pause>nul

Ou, ainda menor, usando echo ao invés de set:

Código:
@echo off
set /p "c=str>> "
echo.%c%>tmp
for %%z in (tmp) do set /a length=%%~zz-2
del tmp&echo strlen: %length%
pause>nul

Além de consumir menos recursos para ser executado.
MasterMC
MasterMC
sou nível 2

Masculino
Mensagens : 8
Pontos : 10
Data de inscrição : 15/12/2013
Idade : 26
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por sachadee Dom Dez 15, 2013 5:28 pm

Não foi para poupar nada, isso
Funciona tbm sem o
Código:
setlocal enabledelayedexpansion

Só e tirar e colocar %$stl% no lugar de !$stl!

Eu efetivamente esqueci de tirar porque eu fiz primeiro o código com o quadro embutido.

Código:

@echo off
Set /P "$Tstring=str : "
echo %$Tstring%>x&FOR %%z IN (x) DO (set /a $stl=%%~zz-2&del x&echo [LONGEUR =] %$stl%)
pause

Agora Vc fala de desperdício. Eu não vejo de qual desperdício Vc esta falando.

Aqui eu fiz um código com um outro jeito de contar um string :

Código:
@echo off
set $c=-1
set /p "$s=Str : "
for /F "delims=" %%c in ('cmd /D /U /C echo %$s% ^| find /V ""') do (set /a $c+=1)
echo %$c%

Não e muito performante mas existe essa possibilidade também.

 Bomba
sachadee
sachadee
Moderadeiro
Moderadeiro

Masculino
Mensagens : 157
Pontos : 291
Data de inscrição : 28/06/2013
Localização : porai
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por MasterMC Seg Dez 16, 2013 10:02 pm

Releia, o desperdício era referente ao comando setlocal.

Forma alternativa interessante, e até bem prática. A melhor que eu vi até agora.
MasterMC
MasterMC
sou nível 2

Masculino
Mensagens : 8
Pontos : 10
Data de inscrição : 15/12/2013
Idade : 26
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por sachadee Ter Dez 17, 2013 11:03 am

Positivo 

Obrigado.

Agora cuidado se vc quer usar esse codigo tem que melhorar um pouco o codigo
testando se o string esta definido. Se não ele vai retornar um valor mesmo se o string esta vazio "".

 Bomba
sachadee
sachadee
Moderadeiro
Moderadeiro

Masculino
Mensagens : 157
Pontos : 291
Data de inscrição : 28/06/2013
Localização : porai
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por MasterMC Ter Dez 17, 2013 4:12 pm

Eu sei, é só tratar antes de passar a string para ter os caracteres contados.
MasterMC
MasterMC
sou nível 2

Masculino
Mensagens : 8
Pontos : 10
Data de inscrição : 15/12/2013
Idade : 26
Barra Respeito às Regras : Respeito às Regras 100%

Ir para o topo Ir para baixo

[BAT] Obtendo o tamanho de uma string (length) Empty Re: [BAT] Obtendo o tamanho de uma string (length)

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos