<?php
$comentario = '\\';
$comentario = '/**
* @var string
* @Assert\NotBlank(message = "El nombre no puede estar vacío")
* @Assert\Regex(pattern="/^ /", match = false, message="El nombre no puede empezar con espacios")
* @Assert\Regex(pattern="/ $/", match = false, message="El nombre no puede terminar con espacios")
*/';
//preg_match( '/Assert\\\(?P<nombre>\w+)(.*)\s*/m', $comentario, $assert );
preg_match( '/Assert\\\(?P<nombre>\w+)((?P<parametros>.+))\s*/m', $comentario, $assert );
var_dump($assert);
array(6) {
[0]=>
string(66) "Assert\NotBlank(message = "El nombre no puede estar vacío")
"
["nombre"]=>
string(8) "NotBlank"
[1]=>
string(8) "NotBlank"
[2]=>
string(45) "(message = "El nombre no puede estar vacío")"
["parametros"]=>
string(45) "(message = "El nombre no puede estar vacío")"
[3]=>
string(45) "(message = "El nombre no puede estar vacío")"
}
Output for 4.3.0 - 4.3.2
array(4) {
[0]=>
string(66) "Assert\NotBlank(message = "El nombre no puede estar vacío")
"
[1]=>
string(8) "NotBlank"
[2]=>
string(45) "(message = "El nombre no puede estar vacío")"
[3]=>
string(45) "(message = "El nombre no puede estar vacío")"
}