home *** CD-ROM | disk | FTP | other *** search
- package org.apache.regexp;
-
- import java.applet.Applet;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Frame;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.Insets;
- import java.awt.Label;
- import java.awt.TextArea;
- import java.awt.TextField;
- import java.awt.Window;
- import java.awt.event.TextEvent;
- import java.awt.event.TextListener;
- import java.io.CharArrayWriter;
- import java.io.PrintWriter;
- import java.util.EventObject;
-
- public class REDemo extends Applet implements TextListener {
- // $FF: renamed from: r org.apache.regexp.RE
- RE field_0 = new RE();
- REDebugCompiler compiler = new REDebugCompiler();
- TextField fieldRE;
- TextField fieldMatch;
- TextArea outRE;
- TextArea outMatch;
-
- public void init() {
- GridBagLayout var1 = new GridBagLayout();
- ((Container)this).setLayout(var1);
- GridBagConstraints var2 = new GridBagConstraints();
- var2.insets = new Insets(5, 5, 5, 5);
- var2.anchor = 13;
- var1.setConstraints(((Container)this).add(new Label("Regular expression:", 2)), var2);
- var2.gridy = 0;
- var2.anchor = 17;
- var1.setConstraints(((Container)this).add(this.fieldRE = new TextField("\\[([:javastart:][:javapart:]*)\\]", 40)), var2);
- var2.gridx = 0;
- var2.gridy = -1;
- var2.anchor = 13;
- var1.setConstraints(((Container)this).add(new Label("String:", 2)), var2);
- var2.gridy = 1;
- var2.gridx = -1;
- var2.anchor = 17;
- var1.setConstraints(((Container)this).add(this.fieldMatch = new TextField("aaa([foo])aaa", 40)), var2);
- var2.gridy = 2;
- var2.gridx = -1;
- var2.fill = 1;
- var2.weighty = (double)1.0F;
- var2.weightx = (double)1.0F;
- var1.setConstraints(((Container)this).add(this.outRE = new TextArea()), var2);
- var2.gridy = 2;
- var2.gridx = -1;
- var1.setConstraints(((Container)this).add(this.outMatch = new TextArea()), var2);
- this.fieldRE.addTextListener(this);
- this.fieldMatch.addTextListener(this);
- this.textValueChanged((TextEvent)null);
- }
-
- void sayRE(String var1) {
- this.outRE.setText(var1);
- }
-
- void sayMatch(String var1) {
- this.outMatch.setText(var1);
- }
-
- String throwableToString(Throwable var1) {
- String var2 = var1.getClass().getName();
- String var3;
- if ((var3 = var1.getMessage()) != null) {
- var2 = var2 + "\n" + var3;
- }
-
- return var2;
- }
-
- void updateRE(String var1) {
- try {
- this.field_0.setProgram(this.compiler.compile(var1));
- CharArrayWriter var2 = new CharArrayWriter();
- this.compiler.dumpProgram(new PrintWriter(var2));
- this.sayRE(var2.toString());
- System.out.println(var2);
- } catch (Exception var4) {
- this.field_0.setProgram((REProgram)null);
- this.sayRE(this.throwableToString(var4));
- } catch (Throwable var5) {
- this.field_0.setProgram((REProgram)null);
- this.sayRE(this.throwableToString(var5));
- }
-
- }
-
- void updateMatch(String var1) {
- try {
- if (this.field_0.match(var1)) {
- String var2 = "Matches.\n\n";
-
- for(int var3 = 0; var3 < this.field_0.getParenCount(); ++var3) {
- var2 = var2 + "$" + var3 + " = " + this.field_0.getParen(var3) + "\n";
- }
-
- this.sayMatch(var2);
- } else {
- this.sayMatch("Does not match");
- }
- } catch (Throwable var4) {
- this.sayMatch(this.throwableToString(var4));
- }
-
- }
-
- public void textValueChanged(TextEvent var1) {
- if (var1 == null || ((EventObject)var1).getSource() == this.fieldRE) {
- this.updateRE(this.fieldRE.getText());
- }
-
- this.updateMatch(this.fieldMatch.getText());
- }
-
- public static void main(String[] var0) {
- Frame var1 = new Frame("RE Demo");
- ((Window)var1).addWindowListener(new 1());
- REDemo var2 = new REDemo();
- ((Container)var1).add(var2);
- var2.init();
- ((Window)var1).pack();
- ((Component)var1).setVisible(true);
- }
- }
-