Regex для замены тэга p любым параметром [duplicate]

Кроме того, хотя и не является чистым решением Python, если вы используете IPython (как вам, вероятно, так или иначе), вы можете сделать:

%run /path/to/filename.py

. Это одинаково легко.

6
задан Atif Mohammed Ameenuddin 24 November 2010 в 09:17
поделиться

3 ответа

вы можете сделать это следующим образом:

if (preg_match('%(<p[^>]*>.*?</p>)%i', $subject, $regs)) {
    $result = $regs[1];
} else {
    $result = "";
}

Вы проверяете свою строку на регулярное выражение, если есть совпадение, вы получаете первый и только первый, если их нет. результатом будет пустая строка.

Если вам нужно получить больше, чем первый результат, вы можете перебирать массив $ regs. И вам нужно найти любой другой тег, который изменит регулярный expresión для его обработки, например, чтобы найти теги IMAGE, которые вы используете:

(<img[^>]*>.*?</img>)

EDIT: Если вы обрабатываете строку за строкой (только с тегом вы ищете), вы можете положить ^ ... $ вокруг выражения, чтобы соответствовать полной строке, например:

if (preg_match('%^(<p[^>]*>.*?</p>)$%im', $subject, $regs)) {
    $result = $regs[1];
} else {
    $result = "";
}

HTH, С уважением.

10
ответ дан SubniC 21 August 2018 в 06:50
поделиться
  • 1
    Привет, как вы можете работать с & quot; for & quot; (цикл)? персонаж по характеру? for ($ i = 0; $ i & lt; = $ strlen; $ i ++) {if ($ cadena {$ i} == & quot; & lt; & quot;) {НЕ РАБОТЫ}} – delive 11 March 2016 в 09:08
  if (preg_match("/\b1\b/i", "some content, paragraph 1")) {
    echo "A match was found.";
} else {
    echo "A match was not found.";
}

Где 1 - согласованный термин ...

Это любая помощь?

-2
ответ дан benhowdle89 21 August 2018 в 06:50
поделиться

Предотвращение включения & lt; pre & gt; тег, может использовать:

if (preg_match('/(<p(>|\s+[^>]*>).*?<\/p>)/i', $subject, $regs)) {
    $result = $regs[1];
} else {
    $result = "";
}
4
ответ дан Jari Keinänen 21 August 2018 в 06:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: