fork(2) download
  1. <?php
  2. //Capturar texto entre comillas dentro de etiqueta
  3. // https://es.stackoverflow.com/q/114079/127
  4.  
  5. $texto = 'codigo cualquiera 1
  6.  
  7. [begin]
  8.  
  9. "hola" <--- match a este
  10.  
  11. 123
  12.  
  13. hola "hola" <-- math a este otro
  14.  
  15. "chau!"
  16.  
  17. [end]
  18. [otro]
  19.  
  20. "hola" <--- a este no
  21.  
  22. [otro]';
  23.  
  24.  
  25.  
  26. //Aplicar el regex
  27. $regex = '/(?:\G(?!\A)|\[begin])[^["]*(?:\[(?!end])[^["]*)*"([^"]*)"/';
  28. preg_match_all($regex, $texto, $resultado);
  29.  
  30. //Imprimir resultados del primer grupo, que es un array dentro de $resultado[1]
  31. echo join("\n", $resultado[1]);
Success #stdin #stdout 0s 82944KB
stdin
Standard input is empty
stdout
hola
hola
chau!