![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
Javaの正規表現で、HTMLタグ以外の文字列を抽出しようとしています。
HTMLタグはの正規表現は"(</?.*>)"のように表しました。これの否定をしたいのですが、方法を教えて下さい。HTMLタグ以外にヒットさせたいです。
一応、現段階のソースを載せます。
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HTMLInnerGetter {
public static void main(String[] args){
String regex = "(</?.*>)";
String target = "<html><head><title>title</title></head><body><h1>head1<br><p>pragraph</p></body></html>";
ArrayList<String> innerHTMLs = new ArrayList<String>();
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(target);
while(matcher.find()){
innerHTMLs.add(matcher.group(1));
}
System.out.println(innerHTMLs);
}
}
出力結果
[<html><head><title>title</title></head><body><h1>head1<br><p>pragraph</p></body></html>]
※否定できなかったので、HTMLタグがヒットしています。
No.1ベストアンサー
- 回答日時:
正規表現でHTMLタグを抜き出せるならその部分を削除すればいいのでは。
http://www.javadrive.jp/regex/replace/index1.html
のように正規表現でマッチした部分を""(何もなし)に変換するのはどうでしょうか。
参考URL:http://www.javadrive.jp/regex/replace/index1.html
ご回答ありがとうございます。
実は、質問文の正規表現は間違っていて、タグだけにヒットしていませんでした。
tanaka12jpのアドバイスどおりに全て""置き換えると、タグ以外の文字が連結してしまうので、困ります。
せめて、タグ以外の文字列間に「,」があれば、splitでもできるのですが、、、
いまたまたま、"(>)([^<>]+)(<)"のgroup(2)でタグ以外の文字を抽出できる正規表現が作れました。いま、この正規表現で問題がないか、色々なHTMLのソースを使って試してみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP php ログイン 1 2022/11/01 00:24
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS html cssのmargin 5 2022/12/03 11:04
- JavaScript HTMLでJavaScriptを使ってパスワードの強化判定のプログラムを作成しています。 一通り作っ 2 2022/10/19 01:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHP 取得した経過時間の表示に...
-
タグとクッキーって関係あるん...
-
php4 大文字小文字の区別なし置換
-
タグにはさまれている文字以外...
-
HTMLの許可
-
XMLファイルからタグごとバッフ...
-
print "<img src=\\"0.jpg\\/>\...
-
横1行に2種類の画像を交互に5...
-
VBAのコマンドボタンの文字列の...
-
C++で空Enterの入力を判...
-
エスケープ文字の復帰(¥r)と...
-
メッセージボックスで1025文字...
-
ソースコードの1行が長いとき...
-
パソコンで全角、半角文字の切...
-
C++でのCRLFについて
-
XMLのタグ名の禁則文字
-
PHPで出力したHTMLのソースが汚い
-
半角記号、全角記号を含む正規...
-
最終行の改行について
-
ダブルコーテーション(
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[php][正規表現]タグ以外を削除...
-
正規表現で複数行に渡る範囲を...
-
変数にHTMLを代入する場合
-
phpの正規表現でstyle="●●"を削...
-
正規表現でタグの置換をしたい...
-
タグにはさまれている文字以外...
-
コメントタグに挟まれた部分を...
-
htmlのソースからテーブルの値...
-
Nvuで作成したhtmlをコピペして...
-
htmlタグ間の特定文字置換
-
Java正規表現-"ある文字列"を含...
-
JSFタグのfタグとは
-
スクレイピングの仕方
-
タグとクッキーって関係あるん...
-
eclipseより、タスク・タグの使...
-
PHP 取得した経過時間の表示に...
-
htmlソースの中を検索して、
-
srcに「banner.」で始まるファ...
-
Aタグってなんですか?
-
ASP.NET(C#)とhtmlの#include
おすすめ情報