Javaの正規表現でパターンマッチをする
提供: Java入門
スポンサーリンク
正規表現とは、非常に強力なツールです。テキストを扱うときにパターン検索、パターン置換で力を発揮します。Javaでも正規表現を利用できます。PatternとMatcherを利用します。ここでは、単純なマッチングを紹介します。
読み方
- 正規表現
- せいきひょうげん
- Pattern
- ぱたーん
- Matcher
- まっちゃー
概要
ワイルドカード的に表現すると *.co.jp にマッチするようなプログラムを紹介します。
- .co.jp にマッチするようなドメインを探したい場合には、正規表現的には、以下のパターンになります。
String regex = ".*\\.co\\.jp$";
ソースコード
このプログラムは、マッチした場合には、match 、マッチしない場合には not match を表示します。
/* * Regex1.java * Copyright (C) 2015 kaoru <kaoru@bsd> */ import java.util.regex.Pattern; import java.util.regex.Matcher; public class Regex1 { public static void main(String[] args) { String s1 = "google.co.jp"; String s2 = "google.com"; String regex = ".*\\.co\\.jp$"; Pattern p = Pattern.compile(regex); System.out.print(s1 + " "); Matcher m1 = p.matcher(s1); System.out.println ( m1.find() ? "match" : "not match" ); System.out.print(s2 + " "); Matcher m2 = p.matcher(s2); System.out.println ( m2.find() ? "match" : "not match" ); } }
コンパイル
$ javac Regex1.java
実行例
このように期待した結果が得られました。
$ java Regex1 google.co.jp match google.com not match
関連項目
- Javaの正規表現でパターンマッチをする
- Javaの正規表現でマッチした部分文字列を取得する
ツイート
スポンサーリンク