Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> wyrazenia regularne i tablica
qbatoja
post 2.12.2007, 19:58:10
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 3.05.2005

Ostrzeżenie: (10%)
X----


czesc mam taki przyklad:
  1. <?php
  2. $arr = array(
  3. 'A' => 'Arbuz',
  4. 'B' => 'Banan');
  5.  
  6. $str = 'A jest smaczny, B jest zgniły';
  7. ?>

jak, za pomoca preg_replace() zrobic, zeby $str reprezentowal napis: "Arbuz jest smaczny, Banan jest zgniły"
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
webdice
post 2.12.2007, 20:06:11
Post #2


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




  1. <?php
  2. $arr = array ('A' => 'Arbuz', 'B' => 'Banan');
  3.  
  4. $str = 'A jest smaczny, B jest zgniły';
  5.  
  6. foreach ($arr as $key => $value)
  7. {
  8. //print $key . $value;
  9.  
  10. $str = preg_replace ('#' . $key . '#', $value, $str);
  11. }
  12.  
  13. print $str;
  14. ?>


Pisane z palca, ewentualne błędy poprawisz sobie sam.
Go to the top of the page
+Quote Post
qbatoja
post 2.12.2007, 20:17:22
Post #3





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 3.05.2005

Ostrzeżenie: (10%)
X----


a jesli moge uzyc tylko raz preg_replace? //zalozenie zadania
ja mam cos takiego ale nie do konca mi dziala:
  1. <?php
  2. function createRegex($string)
  3. {
  4. return ('/' . $string . ' /');
  5. }
  6.  
  7. function addSpace($string)
  8. {
  9. return ($string . ' ');
  10. }
  11.  
  12. preg_replace(array_map('createRegex', array_keys($arr)), array_map('addSpace', $arr), $str, 1) . '<br />';
  13. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 07:20