package lecture.etc;

import java.util.regex.Pattern;

import lecture.common.Log;


/** 正規表現の処理例-1 Java */
class Reg1 {
  public static void main(String[] args) {
    String str0 = "abcdefghabcddefghabcdddefgh";
    String reg0 = "d+e";
    String reg1 = "d+f";
    //
    Log.print("-- splitのテスト");
    String[] words = str0.split(reg0);
    for (String word : words) {
      Log.print(word);
    }
    //
    Log.print("-- replaceFirstのテスト");
    Log.print(str0.replaceFirst(reg0,"XYZ"));
    //
    Log.print("-- replaceAllのテスト");
    Log.print(str0.replaceAll(reg0,"XYZ"));
    //
    Log.print("--  正規表現が文字列の中に含まれるかの判定 - 0");
    if (Pattern.compile(reg0).matcher(str0).find()) {
      Log.print("マッチ!");
    }
    else {
      Log.print("マッチしない");
    }
    Log.print("--  正規表現が文字列の中に含まれるかの判定 - 1");
    if (Pattern.compile(reg1).matcher(str0).find()) {
      Log.print("マッチ!");
    }
    else {
      Log.print("マッチしない");
    }
    //
    Log.print("-- 正規表現が文字列と完全に一致するかの判定 - 0");
    if (Pattern.matches(reg0, "dddddde")) {
      Log.print("マッチ!");
    }
    else {
      Log.print("マッチしない");
    }
    //
    Log.print("-- 正規表現が文字列と完全に一致するかの判定 - 1");
    if (Pattern.matches(reg0, "ddddddef")) {
      Log.print("マッチ!");
    }
    else {
      Log.print("マッチしない");
    }
  }
}
//---------------------------------------------------
//・目次 Javaエトセトラ
//  http://blogs.yahoo.co.jp/artery2020/40576157.html
//・目次 - Java入門
//  http://blogs.yahoo.co.jp/artery2020/39975776.html
//・目次 - ビジネスパーソンの常識と非常識
//  http://blogs.yahoo.co.jp/artery2020/39728331.html
//・目次 - 論理・発想・思考についての考察と鍛え方
//  http://blogs.yahoo.co.jp/artery2020/39657784.html
//・目次 - 単なる雑談
//  http://blogs.yahoo.co.jp/artery2020/40599964.html
//---------------------------------------------------