2017-10-16 9 views
0

私のmySQLデータベースには、Textというフィールドがあります。このテキストにはHTMLタグが含まれています。例:SQL関数LEFT count without html tags

<p>This is an Example</p> 

私のウェブサイトでは、最初の4文字を表示したいと思います。私はこのクエリを行う場合は、次の

SELECT LEFT(text,4) AS text FROM aufgabe WHERE id LIKE ... 

を機能LEFTは、HTMLタグを数えるので、それは私にThisからのみTを示しています。

私の質問は、完全な「これ」を表示してHTMLタグを含めるにはどうすればいいですか?

+0

が必要な場合は、私はこの質問を再びタグ付けしましたあなたにとっては –

+1

このためにはHTMLパーサが必要ですが、これはクエリからも処理していない可能性があります。 –

答えて

0

あなたはこの '<P>この' またはこの '<P>この</P >' を表示したいですか?

LEFT(テキスト、7)は最初のもので動作します。 >

select left(text, locate('>'. text), 4) AS text FROM aufgabe WHERE id LIKE 

の位置を見つけるためにあなたが見つける使用することができ

+0

私はそれが一般的に必要なのは時々他のHTMLタグが先にあるからです。 – etnobommel1989

2

問題は、MySQLのクエリにのみ関連しているとして、あなたは<p>タグ

select left(text, locate('<p>', text)+2, 4) AS text FROM aufgabe WHERE id LIKE 
+1

これはあいにくHTMLタグが1つだけ前に付いている場合にのみ有効です – etnobommel1989

+0

これはあなたのサンプルで何を持っていますか?新しい質問を投稿して、私に関連リンクantwayの答えが最初の提案で更新されたことをコメントしてください – scaisEdge