Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] wyświetlenie wyrażenia regularnego w echo
Forum PHP.pl > Forum > Przedszkole
uncuncunc
Zakładając że w zmiennej mam taki ciąg znaków i dokładnie taki chce wyświetlić poprzez echo, to jak mam to zrobić?
Cytat
'#\'((?:[^\'\\\\]|\\\\.)*)\'#'


Wszystkie funkcje w PHP addslashes, htmlentities czy htmlspecialchars nie działają, ponieawż albo dodają slash w miejscu gdzie nie jest on potrzebny, albo go usuwają.

Chce wyświetlić te wyrażenie w takiej formie jakie jest wyżej, to jak mam to zrobić?
lobopol
Poprzedzić każdy znak specjalny \
Czyli nie echo '\' a
  1. echo '\\';
uncuncunc
Ale ja nie chce niczego poprzedzać, tylko wyświetlić ten ciąg znaków taki jaki jest. Jeśli dodam Bslashe to będzie ich za dużo.
lobopol
nie będzie
  1. echo '\\';

wyświetla \, a nie \\
uncuncunc
To sprawdź ten kod:

  1. $a = "'#\'((?:[^\'\\\\]|\\\\.)*)\'#'";
  2. $a = addslashes($a);
  3. echo $a;


echo zwróci:

Kod
\'#\\\'((?:[^\\\'\\\\]|\\\\.)*)\\\'#\'
lobopol
Ja nie rozumiem czy nie jasno napisałem. Wyświetl sobie to w ten sposób
  1. echo "#\\'((?:[^\\'";

efekt
Kod
#\'((?:[^\'

i tak dalej zastępując każdy pojedynczy \ dwoma \ czyli \\
uncuncunc
Nie rozumiesz. Pobieram zawartość pliku, w którym sa takie wyrażenia. Jak je wyświetlić na ekran, dokładnie w ten sam sposób w jakim są zapisane w pliku?
lobopol
W jaki sposób pobierasz
  1. <?php
  2. $handle = fopen("a.txt", "rb");
  3. $a = fread($handle , filesize('a.txt'));
  4. echo $a;

a.txt zawiera
Kod
#\'((?:[^\'\\\\]|\\\\.)*)\'#


efekt:
Kod
#\'((?:[^\'\\\\]|\\\\.)*)\'#
uncuncunc
file_get_contents + htmlspecialchars
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.