「Javaの正規表現でパターンマッチをする」の版間の差分
提供: Java入門
(ページの作成:「正規表現とは、非常に強力なツールです。テキストを扱うときにパターン検索、パターン置換で力を発揮します。Javaでも正規...」) |
(相違点なし)
|
2015年3月15日 (日) 17:30時点における版
正規表現とは、非常に強力なツールです。テキストを扱うときにパターン検索、パターン置換で力を発揮します。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