から無用段落タグを削除します。は、文字列
Q
は、文字列
4
A
答えて
15
$result = preg_replace('#<p[^>]*>(\s| ?)*</p>#', '', $input);
これは出力にリテラルNBSP文字をキャッチしていませんが、それは見て非常にまれです。
あなたはHTMLを扱っているので、これがユーザー入力の場合、XSSの脆弱性にも対応するHTML Purifierを使用することをお勧めします。空のpタグを削除する設定は、%AutoFormat.RemoveEmptyです。
5
この正規表現は、あなたの例に対して動作します:
<p[^>]*>(?:\s+|(?: )+|(?:<br\s*/?>)+)*</p>
1
元のreplierが述べたように、正規表現はここでは最適な解決策ではありません。あなたが望むのはhtmlストリッパーです。このサイト上の
機能: http://nadeausoftware.com/articles/2007/09/php_tip_how_strip_html_tags_web_page
はあなたを助けるべきは、あなただけではないバックしたい形式に新しい行と何を得るために、文字列操作のビットを使用する必要があります。
関連する問題
- 1. は、文字列、文字列配列マップ
- 2. 文字は、文字列
- 3. 私は、文字列持つ文字列
- 4. DEBUGLOGフォーマット文字列は、文字列リテラル
- 5. 文字列演算子は::文字列
- 6. パンダ - 文字列は、文字列
- 7. は、ArrayListの文字列と文字列
- 8. 文字列が文字列
- 9. 文字列、文字列
- 10. は、文字列
- 11. は、文字列
- 12. は、文字列
- 13. は、文字列
- 14. は、文字列
- 15. は、文字列
- 16. は、文字列
- 17. は文字列
- 18. は、文字列
- 19. は、文字列
- 20. は、文字列
- 21. は、文字列
- 22. は、文字列
- 23. は、文字列
- 24. は、文字列
- 25. は、文字列
- 26. C#大文字と小文字の文字列または文字列
- 27. のTrace.Write(文字列、文字列)とTrace.WriteLine(文字列、文字列)カテゴリ
- 28. 文字列ビルダーまたは文字列クラスの文字列を作成する
- 29. (活字体)は、文字列
- 30. 文字列は添字エラー