2013-12-19 3 views
2

У меня есть строка:Как удалить тег абзаца из строки?

$string = '<p>[Some_string value="2" width="3" someMoreInfoHere]</p>' 

мне нужна помощь в написании регулярное выражение поиска и замены как <p> и </p> с ''.

Я знаю, что я могу использовать строку замены, как здесь:

$string = str_replace("<p></p>", "", $string); 

Однако, я только хочу, чтобы пункт начала и конца, чтобы заменить, когда вхождение либо абзаца начинают тег, а затем imidiatly с помощью кронштейна квадрата, как так:

'<p>[' 

и в случае закрывающей скобки, а затем imidieatly на закрытие paragraoh тега, например так:

']</p>' 

Я надеюсь, что это имеет смысл, я немного смущен себя:/

+0

Так что, если есть '

[' и/или ']

', она должна быть удалена? – HamZa

+0

не удаляется, но заменяется на ']' и '[' –

+1

и когда он '

' '

' должен ли он быть заменен на '[' ']'? Немного непонятно, что вы * точно * один – HamZa

ответ

4
$string = str_replace(array('<p>[', ']</p>'), array('[', ']'), $string); 

Надеется, что это то, что вы ищете.

Нет необходимости в регулярном выражении.

+1

Да, это было .. Я почти получил тот же результат :) Большое спасибо :) –

2

Извините за путаницу парней и особенно @Hamza:

Я figurred это сам, daaahhhhhhh

Это то, что я искал:

$string = str_replace("<p>[", "[", $string); 
$string = str_replace("]</p>", "]", $string); 
+1

Вы можете объединить их и использовать '$ string = str_replace (['

[', ']

'], [' [','] '], $ string); 'или' $ string = str_replace (array ('

[',']

'), array (' [','] '), $ string); 'если обозначение скобок для массива путается :) – HamZa

+1

@HamZa большое предложение, теперь у меня есть еще лучший код :) –

1

Знаете ли вы о strip_tags()?

$string = '<p>[Some_string value="2" width="3" someMoreInfoHere]</p>'; 
echo strip_tags($string); 
+1

Это удалит * все * теги – HamZa

+3

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

+0

За исключением того, что вы не используете это здесь. –

Смежные вопросы