У меня много строк. Ниже приведены некоторые примеры:Регулярные выражения для замены {{a, b}} и {{a}}
- Это моя первая примерная строка. {{1}} Вот как это выглядит.
- Это моя вторая примерная строка. {{1,2}}. Вот как это выглядит.
- Это моя третья примерная строка. {{1,3}} и {{2}}. Вот как это выглядит.
Мой код должен заменить каждый маркер, который выглядит как {{1}}
с <input name="var1">
Он также должен заменить каждый маркер, который выглядит как {{1,2}}
с <input name="var1" value="2">
В общем, каждый маркер, который выглядит как {{a}}
потребности для замены на <input name="vara">
и каждый токен, который выглядит как {{a,b}}
с <input name="vara" value="b">
Я - php.
Что было бы лучшим способом сделать это. В каждой строке будет заменено много «токенов». И каждая строка может иметь токены обоих стилей.
Прямо сейчас, мой код выглядит следующим образом:
for ($y = 1; $y < Config::get('constants.max_input_variables'); $y++) {
$main_body = str_replace("{{" . $y . "}}", "<input size=\"5\" class=\"question-input\" type=\"text\" name=\"var" . $y . "\" value=\"".old('var'.$y)."\" >", $main_body);
}
Но это, очевидно, не очень эффективен, так как I перебрать в поисках совпадений. И конечно же, я даже не соответствующие маркеры, которые выглядят как {{1,2}}
Wow, nice требование. Как вы его разрешите? – Tushar
, пожалуйста, объясните свои требования более четко –
Я ищу эффективный способ заменить токены формата {{a, b}} и {{a}} в строке с использованием php. Где a и b являются целыми числами –