[РЕШЕНО] xParser и регулярка для выреза тегов

Доброго времени суток. Использую xParser, в определенный момент столкнулся с трудность написать следующую регулярку:

Есть вот такой кусок кода, содержащий размеры, которые в последующем нужно будет отправить JSON массивом в опцию size:

<span class="cf4all_error_msg" style="display: none">Пожалуйста, выберите опцию!	</span>
	
		<div class="inline-control-group">
		<input type="radio" value="1909" id="cf4all_input_13927_22_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_22_">XXS	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1910" id="cf4all_input_13927_3_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_3_">XS	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1911" id="cf4all_input_13927_1_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_1_">S	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1912" id="cf4all_input_13927_2_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_2_">M	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1913" id="cf4all_input_13927_9_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_9_">L	  </label>
	</div>
		<div class="inline-control-group">
		<input type="radio" value="1914" id="cf4all_input_13927_12_" class="cf4all_radio" name="customProductData[2521][122][13927][customsforall_option]"><label class="cf4all_button cf4all_no_color_btn " for="cf4all_input_13927_12_">XL	  </label>
	</div>
Не могу вырезать теги так, что бы остался только список размеров XXL и так далее.

Максимум что получилось — regex101.com/r/mD8fB0/30

Спасибо за ответы!

UPD: стоило только написать заметку и решение пришло в голову:

При создании поля используем чанк
@INLINE {$size | preg_get_all : '/(?=<label.*?>)(.*)(?=<\/label>)/m' | preg_replace : '/<label.*?>/': '' | preg_replace : '/\t../': '' | toJSON}
Не знаю на сколько это корректно, но выдает то что нужно. Поправки и другие способы приветствуются )
MrKarandash
12 ноября 2019, 00:08
modx.pro
489
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0