0

WordpressサイトからXMLを解析するアプリを構築しています。Wordpressで実行されるため、使用されるHTMLの多くは実際にはテキストの一部としてデータベースに保存され、HTMLを削除しようとすると、次の記号が表示されます。

</ p>

ここで正しく表示されるかどうかはわかりませんが、破線のボックス内の小さなOBJ記号であり、HTMLパーサーが画像を解析しようとするたびにテキストに表示されます。基本的に、これが発生したときにそれを検出して削除したいのですが、コードでそれを検出するのに問題があります。

私が始めたHTMLコードはここに示されています:

    05-21 11:26:05.402: I/System.out(6546): 
    <a id="dd_start"></a><p><strong><a href="http://movieboozer.com/wp-content/uploads/2012/05/the-avengers-poster.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2Fthe-avengers-poster.jpg','the-avengers-poster')"><img class="alignleft  wp-image-22470" style="margin-left: 10px; margin-right: 10px;" title="the-avengers-poster" src="http://movieboozer.com/wp-content/uploads/2012/05/the-avengers-poster.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2Fthe-avengers-poster.jpg','the-avengers-poster')" alt="" width="208" height="308" /></a>By: <a href="http://neauxreelidea.blogspot.com/" onclick="return TrackClick('http%3A%2F%2Fneauxreelidea.blogspot.com%2F','Bill+Arceneaux')">Bill Arceneaux</a> </strong><strong></strong><strong>(<a href="#verdict">A Toast</a>)<br /></strong><strong>Note: There is a rating embedded within this post, please visit this post to rate it.  </strong></p><p>I used to collect comic books. Yes, I admit it. I got swept up in the fantasy of characters with unique abilities beyond those of normal people, fighting over exaggerated villains in an effort to save their hometown, and in some cases, the world. I mostly focused on the Superman comics &#8211; during the period of time when he became pure energy (I was probably one of the few that liked that story arc) &#8211; but I certainly hadn’t chosen a side in the DC vs. Marvel fight. Why pigeonhole yourself to just one brand?<span id="more-22462"></span></p><p><a href="http://movieboozer.com/wp-content/uploads/2012/05/200px-Action_Comics_1.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2F200px-Action_Comics_1.jpg','200px-Action_Comics_1')"><img class="aligncenter size-full wp-image-22467" title="200px-Action_Comics_1" src="http://movieboozer.com/wp-content/uploads/2012/05/200px-Action_Comics_1.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2F200px-Action_Comics_1.jpg','200px-Action_Comics_1')" alt="" width="200" height="277" /></a></p><p style="text-align: center;">Never got my hands on that issue.</p><p>My collection eventually stopped &#8211; only a little more than a handful of issues remain. Was this just a passing fancy? I think, personally, I just yearned for something more; something to give the pages a new life in my eyes, without insulting my devotion to the mythology. In the last decade, we’ve seen movies that range from bastardized toy commercials to unique creative interpretations. But, have we seen the best that comic book movies can be?</p><p>If we haven’t yet, <em>The Avengers</em> might just be it. The culmination of millions of dollars in production budgets and years of origin stories, this story has HIGH expectations:</p><p>After finding his way out of a cosmic abyss (as seen in <em>Thor</em>), Loki (Tom Hiddleston) makes a play and captures the Tesseract (as seen in <em>Captain America: The First Avenger</em>) – a cube of energy that could prove dangerous if in the wrong hands – from S.H.I.E.L.D. (as seen in all previous Marvel Cinematic Universe films). Nick Fury (Samuel L. Jackson) is forced to restart the Avengers Initiative – a program to bring together Earth’s mightiest heroes – in a last ditch effort to get the cube back and stop Loki from leading an alien army.</p><p>Of course, this means that Fury must bring together a group of people who probably shouldn’t be in the same room together; Iron Man (Robert Downey Jr.), CaptainAmerica(Chris Evans), Dr. Bruce Banner AKA The Hulk (Mark Ruffalo), Thor (Chris Hemsworth), Black Widow (Scarlett Johansson) and Hawkeye (Jeremy Renner). Can these heroes put their difference aside and conquer their own inner problems in time to save the world?</p><p><strong>A Toast</strong></p><p>Have you ever had an awesome-gasm? … Did I just invent a new word to describe a movie?</p><p><a href="http://movieboozer.com/wp-content/uploads/2012/05/hulk.jpg" onclick="r.......

そして、これはその後のように見えます:

   05-21 11:26:05.585: I/System.out(6546): : Bill Arceneaux (A Toast)
   05-21 11:26:05.585: I/System.out(6546): Note: There is a rating embedded within this post, please visit this post to rate it.  
   05-21 11:26:05.585: I/System.out(6546): I used to collect comic books. Yes, I admit it. I got swept up in the fantasy of characters with unique abilities beyond those of normal people, fighting over exaggerated villains in an effort to save their hometown, and in some cases, the world. I mostly focused on the Superman comics – during the period of time when he became pure energy (I was probably one of the few that liked that story arc) – but I certainly hadn’t chosen a side in the DC vs. Marvel fight. Why pigeonhole yourself to just one brand?
   05-21 11:26:05.585: I/System.out(6546): 
   05-21 11:26:05.585: I/System.out(6546): Never got my hands on that issue.
   05-21 11:26:05.585: I/System.out(6546): My collection eventually stopped – only a little more than a handful of issues remain. Was this just a passing fancy? I think, personally, I just yearned for something more; something to give the pages a new life in my eyes, without insulting my devotion to the mythology. In the last decade, we’ve seen movies that range from bastardized toy commercials to unique creative interpretations. But, have we seen the best that comic book movies can be?
   05-21 11:26:05.585: I/System.out(6546): If we haven’t yet, The Avengers might just be it. The culmination of millions of dollars in production budgets and years of origin stories, this story has HIGH expectations:
   05-21 11:26:05.589: I/System.out(6546): After finding his way out of a cosmic abyss (as seen in Thor), Loki (Tom Hiddleston) makes a play and captures the Tesseract (as seen in Captain America: The First Avenger) – a cube of energy that could prove dangerous if in the wrong hands – from S.H.I.E.L.D. (as seen in all previous Marvel Cinematic Universe films). Nick Fury (Samuel L. Jackson) is forced to restart the Avengers Initiative – a program to bring together Earth’s mightiest heroes – in a last ditch effort to get the cube back and stop Loki from leading an alien army.
   05-21 11:26:05.589: I/System.out(6546): Of course, this means that Fury must bring together a group of people who probably shouldn’t be in the same room together; Iron Man (Robert Downey Jr.), CaptainAmerica(Chris Evans), Dr. Bruce Banner AKA The Hulk (Mark Ruffalo), Thor (Chris Hemsworth), Black Widow (Scarlett Johansson) and Hawkeye (Jeremy Renner). Can these heroes put their difference aside and conquer their own inner problems in time to save the world?
   05-21 11:26:05.589: I/System.out(6546): A Toast
   05-21 11:26:05.589: I/System.out(6546): Have you ever had an awesome-gasm? … Did I just invent a new word to describe a movie?
   05-21 11:26:05.589: I/System.out(6546): 
   05-21 11:26:05.589: I/System.out(6546): HULK SMASH EXPECTATIONS!
   05-21 11:26:05.589: I/System.out(6546): With a cast of characters and actors this big, you would think things might get a bit muddled. But, with lots of clever photography, editing and dialogue, everything works out. Each hero – even Hawkeye and Black Widow – gets time to shine. And I don’t just mean moments where they look pretty and badass; each hero has personality and conflict. We actually get a little bit of depth here! It could have easily been a dumb action film, but instead chose to be a really good comic book.
   05-21 11:26:05.589: I/System.out(6546): Marvel could’ve easily picked a team of hack writers and a yes man director to helm this project, expecting to make their money back on brand recognition alone. Instead, they picked a fan friendly writer/director who understands how the audience feels about these characters, and really delivered something special. Sure, the depth I described doesn’t go into superhero psychology levels, but it’s exactly where we need it to be. This really is just about perfect.
   05-21 11:26:05.589: I/System.out(6546): Create a Drink
   05-21 11:26:05.589: I/System.out(6546): At one point in the film, Loki is offered a drink. He turns it down, but that doesn’t mean you shouldn’t. Just for fun, come up with your own Loki inspired beverage (but be safe about it). Some people at the midnight screening I attended were dressed as their favorite characters; why not pay homage to them in liquid courage form?
   05-21 11:26:05.589: I/System.out(6546): Verdict
   05-21 11:26:05.589: I/System.out(6546): 
   05-21 11:26:05.589: I/System.out(6546): Comic book movies rarely get any better than this. This isn’t to knock the other superhero flicks coming out this year (they’ll probably be great for different reasons), but the bar has been reset. Maybe the genre should be split into comic book, graphic novel and one off categories, in an effort to better tell the good from the bad? All I know for sure is, I feel like dusting off my old Action Comics issues.

私はこの問題がAndroidシステムであるのと同じくらいJavaにあるのではないかと感じています

ご協力いただきありがとうございます!

編集:これは、HTMLでシンボルが出現する最初の場所です。

<span id="more-22462"></span></p><p><a href="http://movieboozer.com/wp-content/uploads/2012/05/200px-Action_Comics_1.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2F200px-Action_Comics_1.jpg','200px-Action_Comics_1')"><img class="aligncenter size-full wp-image-22467" title="200px-Action_Comics_1" src="http://movieboozer.com/wp-content/uploads/2012/05/200px-Action_Comics_1.jpg" onclick="return TrackClick('http%3A%2F%2Fmovieboozer.com%2Fwp-content%2Fuploads%2F2012%2F05%2F200px-Action_Comics_1.jpg','200px-Action_Comics_1')" alt="" width="200" height="277" />
4

1 に答える 1

4

Html.fromHtmlHTMLコンテンツから表示可能なスタイル付きテキストを取得するために使用できます。スタイル付きテキストから画像情報を削除するには、次のコードを使用します。

public static Spanned removeImageSpanObjects(String inStr) {
    SpannableStringBuilder spannedStr = (SpannableStringBuilder) Html
            .fromHtml(inStr.trim());
    Object[] spannedObjects = spannedStr.getSpans(0, spannedStr.length(),
            Object.class);
    for (int i = 0; i < spannedObjects.length; i++) {
        if (spannedObjects[i] instanceof ImageSpan) {
            ImageSpan imageSpan = (ImageSpan) spannedObjects[i];
            spannedStr.replace(spannedStr.getSpanStart(imageSpan),
                    spannedStr.getSpanEnd(imageSpan), "");
        }
    }
    return spannedStr;
}
于 2012-05-21T10:54:17.873 に答える