Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: obróbka zmiennej tekstowej
Forum PHP.pl > Forum > Przedszkole
asblaze
Witam.... problem wygląda następująco...

Wprowadzam zmienną tekstową "asblaze" . chciałbym, żeby skrypt wykonywał operacje, która każdej literce przydzieli dwie liczby:

pierwsza określi jej miejsce w ciągu znaków "asblaze",
druga pozycję w alfabecie.

Mało tego.... zeby literka "z" była pominięta smile.gif

Wynik końcowy powinien wyglądać w ten sposób smile.gif

1 1 2 18 3 2 4 12 5 1 7 5

gdzie

a= 1 1
s= 2 18
b= 3 2
l = 4 12
a= 5 1
z=
e= 7 5

Nie za bardzo wiem jak to ugryść...
chociaż mam pomysł... tylko jak rozbić "asblaze" na arraya, żeby każda literka była osobną wartością?
dasko
Możesz na przykład tak:
  1. <?php
  2.  
  3. $str = 'asblaze';
  4. $alpha = 'abcdefghijklmnopqrstuvwxyz';
  5. $nrs = array();
  6. for($i=0,$c=strlen($str);$i<$c;$i++) {
  7. if(($a = substr($str, $i, 1)) != 'z') {
  8. $nrs[] = $i+1;
  9. $nrs[] = strpos($alpha, $a)+1;
  10. }
  11. }
  12. echo join(' ', $nrs);
  13.  
  14. ?>

winksmiley.jpg
asblaze
dziękuję..... niestety nie mogę zrozumiec tej składni.... ale kombinuję, jak na tej bazie wykluczyć, tak jak "z" wiecej liter ... nei wychodz mi jeszcze, ale się nie poddaje smile.gif

[EDIT]

No dobra.... zosłożyłem skrypt ... i nawet go rozumiem smile.gif
Ale jak zrobić, żeby zamiast "z" pomijany był cały ciąg znaków? np "z,j,f,l" questionmark.gif?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.