次の文字列があるとします。User 192.168.46.3 connected to this AP
私はその中のIPアドレスを<font color='red'>"+192.168.46.3+"</font>
に置き換えて色を変えることができます。これを達成する最良の方法は何ですか?文字列のハイライトIPアドレス
0
A
答えて
0
これはTim'sの回答に基づいて、完全なコードです:
String input = "User 192.168.46.3 connected to this AP";
String regex = "([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})";
String output = input.replaceAll(regex, "<font color='red'>$0</font>");
System.out.println(output);
1
IPの検証について気にしない場合、シンプルな正規表現がこのトリックを行うことができます。
グラブjava.util.regex.Patternのと.Matcherと交換したいグループを置き換えるには
([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})
のようなものを使用。このよう
:
final Pattern p = new Pattern("([0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3})")
final Matcher m = p.match("User 192.168.46.3 connected to this AP")
final String s = m.replaceAll("<font color='red'>$1</font>")
0
あなたは、文字列内のIPアドレスを検出するために、Pattern.javaとMatcher.javaクラスを使用することができます。
Pattern.javaドキュメントをご覧ください。両方のドキュメントを正しく使用する方法の例があります。 その後、マッチャーの結果をループし、それぞれにForegroundColorSpanを適用できます。
SpannableString spannable = new SpannableString(YOUR_STRING_CONTAINING_AN_IP_ADDRESS);
Pattern p = Pattern.compile(YOUR_REGEX);
Matcher m = p.matcher(YOUR_STRING_CONTAINING_AN_IP_ADDRESS);
while(m.find()) {
spannable.setSpan(new ForegroundColorSpan(COLOR_YOUR_WANT), m.start(), m.end()-1, Spanned.SPAN_INCLUSIVE_INCLUSIVE);
}
次に、spannableを使用してテキストビューのテキストを設定することができます。
関連する問題
- 1. 文字列からの正規表現のIPアドレス
- 2. Python:文字列のリストとしてIPアドレスのリストを渡す
- 3. java(android)の文字列をIPアドレスに変換する
- 4. 文字列と文字列のアドレスが
- 5. Javaは文字列でIPアドレスを見つけますか?
- 6. 文字列からIPアドレスを取得する(Groovy)
- 7. ビジュアルスタジオコード - HTML文字列の構文ハイライト?
- 8. re.findall()のIPアドレス配列を文字列に変換する方法
- 9. 2文字列配列に格納する文字列IPアドレスを読み取る
- 10. パイソン - ユーザーのIPアドレスが、私はこのような何かに見えるIPアドレス文字列の配列を持っているIPの
- 11. Python文字列内のSQLのハイライト
- 12. ハイライト文字列のPHP正規表現
- 13. IP長い文字列フィルタ
- 14. Python pack IP文字列
- 15. perlの2つの文字列とハイライト不一致文字
- 16. ルアの特定の文字列からIPアドレスを抽出する
- 17. itoa/to_string/boostなしのIPアドレス文字列への符号なしint
- 18. 共有IPアドレスを持つWebサーバー上のMySQLデータベースの接続文字列 - C#
- 19. 301クエリ文字列を維持しながらサーバのIPアドレスをドメインにリダイレクト
- 20. Kubernetes - サービスクラスターのIPアドレスとPodのIPアドレス
- 21. IPアドレスを8文字の長い文字列にマップするにはどうすればよいですか?
- 22. Oracle接続文字列でIPアドレスをDNSに置き換える
- 23. forループからリストにIPアドレス文字列を追加する問題
- 24. IPアドレス文字列からポート番号を削除する方法
- 25. Luaの文字列のアドレスを表示
- 26. VB.NETのアドレスからの文字列
- 27. MACアドレスとIPアドレス
- 28. Javaのアドレス/文字列解析ライブラリ
- 29. Avalonのハイライト一致文字
- 30. IPアドレス