いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

正規表現チェックツール SOURCE-0007

実行ボタンが押下された際のリスナー

package gsf.tools.regexp.regexptester.listener;

import gsf.tools.regexp.regexptester.bean.InputAreaBean;
import gsf.tools.regexp.regexptester.bean.RegInputFieldsBean;
import gsf.tools.regexp.regexptester.bean.ResultAreaBean;
import gsf.tools.regexp.regexptester.bean.TargetInputFieldsBean;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.regex.Pattern;

import javax.swing.JOptionPane;

public class ExecuteAction implements ActionListener {
  private InputAreaBean         inputArea;
  private ResultAreaBean        resultArea;
  private RegInputFieldsBean    regInputFields;
  private TargetInputFieldsBean targetInputFields;
  
  public ExecuteAction(InputAreaBean inputArea, ResultAreaBean resultArea){
    this.inputArea  = inputArea;
    this.resultArea = resultArea;
    
    this.regInputFields    = (RegInputFieldsBean) this.inputArea.getRegInputFields();
    this.targetInputFields = (TargetInputFieldsBean) this.inputArea.getTargetInputFields();
  }  
  
  public void actionPerformed(ActionEvent e) {
    String reg    = this.regInputFields.getFieldComponent().getText();
    String target = this.targetInputFields.getFieldComponent().getText();
    
    if(Pattern.matches(reg, target)){
      JOptionPane.showMessageDialog(inputArea, "マッチしました");
    }else{
      JOptionPane.showMessageDialog(inputArea, "マッチしませんでした");
    }
  }

}


================================
過去の記事については、以下のページからご参照下さい。