Ajuda simples.. iniciando em perl

Started by Quicky, 11 de August , 2006, 12:16:09 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Quicky

Olá pessoal  :D
eu aki denovo o/

bom.. vamos lá..
decidi começar a estudar perl..
e achei bem interessante a linguagem..
só que estou com uma dúvida.. que não consigo achar
na net..

eh simples..
eu kero identificar as letras que formam a palavra quicky.. por numeros..

exemplo:
$quicky[0]="q"
$quicky[1]="u"
$quicky[2]="i"

e assim por diante.. em javascript.. eu usava o comando string.charAt(x)
onde x era o respectivo numero...

gostaria de saber como seria isso em perl..
desde já agradeço.. t+ aew povu =]
Just Me...

rodweb


Quicky

não... não kero substituir
kero isolá-los um do outro
pra poder usar numa operação matematica..
sabe como fazer?
Just Me...

Anonymous

Use um array, que se não me engano em perl é declarado como:

@array

Bom, não sei, não programo em perl  8)

nibbles

isso o array seria
@quick=('q','u','i','c','k');
e para acessessá-los usa-se o
$quick[0], $quick[1] e assim por diante
creio que seja isso ja faz um tempo que nao programo em perl...



"A diversão do inteligente é se fingir de burro para aquele que se finge de inteligente."
"ENGENHARIA SOCIAL. Porque não existe patch para a ignorância humana."

Quicky

não vélho ¬¬
num kero fazer um array manual...
vou explicar logo tudo pra fikar mais claro

eu criei um gerador de cpf já em javascript e quero criar em perl..
soh que daí que tá..
se eu tivesse que fazer um array.. teria que saber o valor de todos os cpf's possíveis..
num ruleia..

eu kero uma função que me de a determinada caractere da string, de acordo com um numero...

caso contrário.. axo que não rola..
Just Me...

anakim

Entendo +- oq vc quer, eu infelizmente nao mexo com perl, + acho que vc quer exibir os numeros associados a letras

%ass = ("1", a,
"2", b,
"3", c,
"4", d,
"5",e,
"6",f,
"7",g,
"8",h,
"9",i,
"10",j,
"11",k,
"12",l,
"13",m,
"14",n,
"15",o,
"16",p,
"17",q,
"18",r,
"19", s,
"20",t,
"21",u,
"22",v,
"23",w,
"24",x,
"25",y,
"26",z);
print ($ass("q"));

olha isso é só teoria, eu nao saco nada de perl, só lógica nesse codigo, é uma associacao, por exemplo manda mostra o numero 26 e serar retornado z, se é q me entende, flws ae!!!
Why use Windows? If I have the door ;-)

Quicky

omfg..
num é nda disso pessoal...
eu num kero substituir
eu kero separar os numeros ¬¬
kaso contrário como q eu vou substituir o primeiro digito dos 9 q o kra pos? ¬¬
nhaaa..
alguem sabe?
Just Me...

Anonymous

Ca
Quote from: "Quicky"omfg..
num é nda disso pessoal...
eu num kero substituir
eu kero separar os numeros ¬¬
kaso contrário como q eu vou substituir o primeiro digito dos 9 q o kra pos? ¬¬
nhaaa..
alguem sabe?

Cara, fassa o programa ler do input para o array, nisso ele sera disponibilizado com os numeros separados, ex:

Quoteuser[]="Defcon";

D ->0
E ->1

E por ai vai, bom, não é em perl, mas da uma nocao :)


By

Quicky

aee.. alguem tá começando a entender
kra.. eu já pensei na idéia... mas o problema é que num array..
ele considera os elementos.. q tiverem em aspas..

então
@cpf = ["Amor"]

cpf[1] = false.. pq amor é u 0..
cpf[0] = true... "amor"

entende?
Just Me...

Dark_Side

Hi,
Sabendo-se que em uma string temos uma seqüência de caracteres, você pode utilizar a função substr que extrai parte de uma string em outra, que pode conter o caractere que você deseja.
Sua sintaxe: result = substr(string,inicial,final);
Onde:
string => String que você quer manipular;
inicial => Caractere inicial de onde começará a contagem, sendo zero-based, isto é, começando do 0;
final => Número de caracteres a ser contando a partir da posição inicial.

O valor de retorno result, obtém a nova string.

Exemplo:
$lol = "abcdefg";
print substr($lol,0,1); # Mostra 1 caractere a partir da posição 0, no caso, o caractere seria o próprio localizado na posição 0 - a.

$lol = "abcdefg";
print substr($lol,1,1); # Mostra - a.

$lol = "abcdefg";
print substr($lol,2,1); # Mostra - c.

$lol = "abcdefg";
print substr($lol,0,3); # Mostra - abc.

Bem, é por aí...
Carry on..
Bye.

Quicky

Quote from: "Dark_Side"Hi,
Sabendo-se que em uma string temos uma seqüência de caracteres, você pode utilizar a função substr que extrai parte de uma string em outra, que pode conter o caractere que você deseja.
Sua sintaxe: result = substr(string,inicial,final);
Onde:
string => String que você quer manipular;
inicial => Caractere inicial de onde começará a contagem, sendo zero-based, isto é, começando do 0;
final => Número de caracteres a ser contando a partir da posição inicial.

O valor de retorno result, obtém a nova string.

Exemplo:
$lol = "abcdefg";
print substr($lol,0,1); # Mostra 1 caractere a partir da posição 0, no caso, o caractere seria o próprio localizado na posição 0 - a.

$lol = "abcdefg";
print substr($lol,1,1); # Mostra - a.

$lol = "abcdefg";
print substr($lol,2,1); # Mostra - c.

$lol = "abcdefg";
print substr($lol,0,3); # Mostra - abc.

Bem, é por aí...
Carry on..
Bye.

Pronto amigo.. axo que com sua dica eu vou poder concluir agora..
aeee.. =D
nhaa.. em javascript é mais simples fazer isso ^^
mas estou fascinado por perl.. gostei muito =]
vlw.. já já eu continuo meu projeto
Just Me...

Quicky

Conseguido o/
Brigado aih pra quem tentou ajudar..
e mais obrigado aih ao Dark_Side que realmente iluminou o caminho.. está aí o grande problema x]

#!/usr/local/bin/perl
$cpf = $ARGV[0];
for ($x=0; $x<=9; $x++){
$cpf[$x]=substr($cpf,$x,1);
}
Just Me...