RegexPlugin

Compatible with  IntelliJ IDEA
24.02.2014
144 001
Regular Expression Explorer for IntelliJ IDEA.
Allows you to experiment with Java regular expressions in a dynamic environment.

Download plugin

Recent change notes

  • 0.7.2
    • Add option to copy the regex as is, skipping the conversion to java strings.
    • Fixed a stupid mistake in not testing with multiple projects open at once. This showed up as an assertion failure when opening a second project. Mea culpa.
  • 0.7.1
    • Major revamp of the color handling. The colors used in the plugin now reflect the color scheme chosen in the rest of IntelliJ. This makes the text much more readable if you use any of the dark themes available.
  • 0.6.3
    • Fixes hang on startup with IntelliJ X.
  • 0.6.2
    • Fixes for the 94.539 EAP (FLAVOR not found error).
  • 0.6.1
    • Update for IntelliJ 9
  • 0.6.0
    • Fix plugin so that it saves its state to the workspace rather than the project file.
    • Added toolbar buttons to create a new regex and delete the current one. This makes the library handling a little more convenient.
    • Fixed the copy code so that it it copies that part of the regular expression that has been selected.
    • Changed the way copy and paste happens in the regex editor so that you can copy segments of the regular expression and paste them back to the editor without having them changed to java strings.
    • Fixed the fonts used in the plugin so that they are fixed pitch again (I think that one of the IntelliJ IDEA releases changed the default here).
    • Added the option to show labels for the toolbar buttons that refer to regex flags. I can never keep track of which icon represents which completely abstract concept. This is a menu option. I wasn't able to work out how best to do this dynamically so right now you have to restart so see this change.
    • Changed the reference card pane so that there are closers on the splitter again.
    • Removed the popup reference window. I really don't think that it was useful particularly because it can go behind the main IDEA window.
    • Fixed a race condition (null pointer exception) in the stand alone swing app.
    • Added icons to menu.
    • Changed sizing of initial panes so that they are more likely to display nicely on a clean install.
  • 0.5.9
    • dockable reference card in addition to the popup
    • ctrl-c in regexeditor copies the regex as java string
  • 0.5.8
    • using since-build instead of min, max-version
  • 0.5.7
    • smaller icons
    • consistent l&f with the idea project toggle buttons (short description in the statusbar and in the tooltips)
    • referencepage moved into the menu
    • iconhelp with some more information on how the buttons really work
22.06.2016
getting a few exceptions in Idea 2016.1.3 on Linux Mint 17.3 null java.util.EmptyStackException at java.util.Stack.peek(Stack.java:102) at javax.swing.text.DefaultStyledDocument$ElementBuffer.insertElement(DefaultStyledDocument.java:1827) at javax.swing.text.DefaultStyledDocument$ElementBuffer.create(DefaultStyledDocument.java:1488) at javax.swing.text.DefaultStyledDocument.create(DefaultStyledDocument.java:149) at javax.swing.text.html.HTMLDocument.create(HTMLDocument.java:469) at javax.swing.text.html.HTMLDocument$HTMLReader.flushBuffer(HTMLDocument.java:3736) at javax.swing.text.html.HTMLDocument$HTMLReader.flush(HTMLDocument.java:2538) at javax.swing.text.html.HTMLEditorKit.read(HTMLEditorKit.java:262) at javax.swing.JEditorPane.setText(JEditorPane.java:1415) at regexPlugin.MatchAction.makeErrorOutput(MatchAction.java:99) at regexPlugin.MatchAction.perform(MatchAction.java:55) at regexPlugin.AutoUpdateDocumentListener.autoupdate(AutoUpdateDocumentListener.java:41) at regexPlugin.AutoUpdateDocumentListener.insertUpdate(AutoUpdateDocumentListener.java:29) at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201) at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748) at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707) at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:669) at javax.swing.JTextPane.replaceSelection(JTextPane.java:192) at javax.swing.JTextPane.replaceSelection(JTextPane.java:175) at javax.swing.text.DefaultEditorKit$DefaultKeyTypedAction.actionPerformed(DefaultEditorKit.java:884) at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1663) at javax.swing.JComponent.processKeyBinding(JComponent.java:2882) at javax.swing.JComponent.processKeyBindings(JComponent.java:2929) at javax.swing.JComponent.processKeyEvent(JComponent.java:2845) at java.awt.Component.processEvent(Component.java:6310) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771) at java.awt.Component.dispatchEventImpl(Component.java:4760) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:632) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.util.EmptyStackException at java.util.Stack.peek(Stack.java:102) at javax.swing.text.DefaultStyledDocument$ElementBuffer.insertElement(DefaultStyledDocument.java:1827) at javax.swing.text.DefaultStyledDocument$ElementBuffer.create(DefaultStyledDocument.java:1488) at javax.swing.text.DefaultStyledDocument.create(DefaultStyledDocument.java:149) at javax.swing.text.html.HTMLDocument.create(HTMLDocument.java:469) at javax.swing.text.html.HTMLDocument$HTMLReader.flushBuffer(HTMLDocument.java:3736) at javax.swing.text.html.HTMLDocument$HTMLReader.flush(HTMLDocument.java:2538) at javax.swing.text.html.HTMLEditorKit.read(HTMLEditorKit.java:262) at javax.swing.JEditorPane.setText(JEditorPane.java:1415) at regexPlugin.MatchAction.makeErrorOutput(MatchAction.java:99) at regexPlugin.MatchAction.perform(MatchAction.java:55) at regexPlugin.AutoUpdateDocumentListener.autoupdate(AutoUpdateDocumentListener.java:41) at regexPlugin.AutoUpdateDocumentListener.insertUpdate(AutoUpdateDocumentListener.java:29) at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201) at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748) at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707) at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:669) at javax.swing.JTextPane.replaceSelection(JTextPane.java:192) at javax.swing.JTextPane.replaceSelection(JTextPane.java:175) at javax.swing.text.DefaultEditorKit$DefaultKeyTypedAction.actionPerformed(DefaultEditorKit.java:884) at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1663) at javax.swing.JComponent.processKeyBinding(JComponent.java:2882) at javax.swing.JComponent.processKeyBindings(JComponent.java:2929) at javax.swing.JComponent.processKeyEvent(JComponent.java:2845) at java.awt.Component.processEvent(Component.java:6310) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771) at java.awt.Component.dispatchEventImpl(Component.java:4760) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:632) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) null java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.updateChildSizes(BoxView.java:366) at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:348) at javax.swing.text.BoxView.layout(BoxView.java:708) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1722) at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1433) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:737) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.updateChildSizes(BoxView.java:366) at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:348) at javax.swing.text.BoxView.layout(BoxView.java:708) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1722) at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1433) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:737) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.updateChildSizes(BoxView.java:366) at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:334) at javax.swing.text.BoxView.layout(BoxView.java:709) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1722) at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1433) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:737) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.modelToView(BoxView.java:482) at javax.swing.text.CompositeView.modelToView(CompositeView.java:265) at javax.swing.text.BoxView.modelToView(BoxView.java:484) at javax.swing.plaf.basic.BasicTextUI$RootView.modelToView(BasicTextUI.java:1509) at javax.swing.plaf.basic.BasicTextUI.modelToView(BasicTextUI.java:1047) at javax.swing.text.DefaultCaret.paint(DefaultCaret.java:621) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:742) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) null java.lang.ArrayIndexOutOfBoundsException at javax.swing.text.CompositeView.replace(CompositeView.java:210) at javax.swing.text.View.updateChildren(View.java:1120) at javax.swing.text.View.changedUpdate(View.java:786) at javax.swing.text.FlowView.changedUpdate(FlowView.java:283) at javax.swing.text.ParagraphView.changedUpdate(ParagraphView.java:788) at javax.swing.text.View.forwardUpdateToView(View.java:1231) at javax.swing.text.View.forwardUpdate(View.java:1162) at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240) at javax.swing.text.View.changedUpdate(View.java:792) at javax.swing.plaf.basic.BasicTextUI$RootView.changedUpdate(BasicTextUI.java:1638) at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.changedUpdate(BasicTextUI.java:1899) at javax.swing.text.AbstractDocument.fireChangedUpdate(AbstractDocument.java:230) at javax.swing.text.DefaultStyledDocument.setCharacterAttributes(DefaultStyledDocument.java:526) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:211) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.updateChildSizes(BoxView.java:366) at javax.swing.text.BoxView.setSpanOnAxis(BoxView.java:334) at javax.swing.text.BoxView.layout(BoxView.java:709) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.plaf.basic.BasicTextUI$RootView.setSize(BasicTextUI.java:1722) at javax.swing.plaf.basic.BasicTextUI$RootView.paint(BasicTextUI.java:1433) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:737) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) java.lang.NullPointerException at javax.swing.text.FlowView$FlowStrategy.createView(FlowView.java:663) at javax.swing.text.FlowView$FlowStrategy.layoutRow(FlowView.java:520) at javax.swing.text.FlowView$FlowStrategy.layout(FlowView.java:477) at javax.swing.text.FlowView.layout(FlowView.java:201) at javax.swing.text.BoxView.setSize(BoxView.java:397) at javax.swing.text.BoxView.modelToView(BoxView.java:482) at javax.swing.text.CompositeView.modelToView(CompositeView.java:265) at javax.swing.text.BoxView.modelToView(BoxView.java:484) at javax.swing.plaf.basic.BasicTextUI$RootView.modelToView(BasicTextUI.java:1509) at javax.swing.plaf.basic.BasicTextUI.modelToView(BasicTextUI.java:1047) at javax.swing.text.DefaultCaret.paint(DefaultCaret.java:621) at javax.swing.plaf.basic.BasicTextUI.paintSafely(BasicTextUI.java:742) at javax.swing.plaf.basic.BasicTextUI.paint(BasicTextUI.java:881) at javax.swing.plaf.basic.BasicTextUI.update(BasicTextUI.java:860) at javax.swing.JComponent.paintComponent(JComponent.java:780) at regexPlugin.regexEditor.SyntaxHighlighter.paintComponent(SyntaxHighlighter.java:182) at javax.swing.JComponent.paint(JComponent.java:1056) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5210) at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579) at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1502) at javax.swing.RepaintManager.paint(RepaintManager.java:1272) at javax.swing.JComponent._paintImmediately(JComponent.java:5158) at javax.swing.JComponent.paintImmediately(JComponent.java:4969) at javax.swing.RepaintManager$4.run(RepaintManager.java:831) at javax.swing.RepaintManager$4.run(RepaintManager.java:814) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:789) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:738) at javax.swing.RepaintManager.access$1200(RepaintManager.java:64) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1732) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:726) at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:857) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:658) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:386) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Anonymous
26.05.2011
good plugin

feature request
1) highlight matches as http://myregexp.com/
2) change font and font size (on ubuntu, font not good and size small)

thanks
23.05.2011
0.6.3 should fix the compatibility issue wint Idea X
13.04.2011
RegExp plugin is starting improperly and is causing deadlocks in IntelliJ 10.0.3.

See: http://youtrack.jetbrains.net/issue/IDEA-67820

Cheers
bjorn
Anonymous
25.06.2010
Excellent plugin. Very handy. Work fine in 9.0.2. Cheers!
Anonymous
25.03.2010
Latest version causes exception in Maia 94.585 (Bad Version).

Details:
Bad version number in .class file [Plugin: RegexPlugin]: Bad version number in .class file [Plugin: RegexPlugin]
com.intellij.diagnostic.PluginException: Bad version number in .class file [Plugin: RegexPlugin]
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:474)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:440)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.access$100(ComponentManagerImpl.java:426)
at com.intellij.openapi.components.impl.ComponentManagerImpl.a(ComponentManagerImpl.java:116)
at com.intellij.openapi.components.impl.ComponentManagerImpl.initComponents(ComponentManagerImpl.java:371)
at com.intellij.openapi.components.impl.ComponentManagerImpl.init(ComponentManagerImpl.java:86)
at com.intellij.openapi.project.impl.ProjectImpl.init(ProjectImpl.java:250)
at com.intellij.openapi.project.impl.ProjectManagerImpl.a(ProjectManagerImpl.java:265)
at com.intellij.openapi.project.impl.ProjectManagerImpl.a(ProjectManagerImpl.java:293)
at com.intellij.openapi.project.impl.ProjectManagerImpl.access$200(ProjectManagerImpl.java:72)
at com.intellij.openapi.project.impl.ProjectManagerImpl$6.run(ProjectManagerImpl.java:455)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$3.run(ProgressManagerImpl.java:244)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:422)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$4.run(ProgressManagerImpl.java:255)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:197)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:222)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:188)
at com.intellij.openapi.application.impl.ApplicationImpl$6$1.run(ApplicationImpl.java:490)
at com.intellij.openapi.application.impl.ApplicationImpl$5.run(ApplicationImpl.java:329)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
at java.lang.Thread.run(Thread.java:613)
at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:125)
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
at java.lang.ClassLoader.defineClass(ClassLoader.java:520)
at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:119)
at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:115)
at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:91)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClassInsideSelf(PluginClassLoader.java:94)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:57)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:450)
... 25 more



java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:675)
at java.lang.ClassLoader.defineClass(ClassLoader.java:520)
at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:119)
at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:115)
at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:91)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClassInsideSelf(PluginClassLoader.java:94)
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:57)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:374)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:450)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.a(ComponentManagerImpl.java:440)
at com.intellij.openapi.components.impl.ComponentManagerImpl$ComponentsRegistry.access$100(ComponentManagerImpl.java:426)
at com.intellij.openapi.components.impl.ComponentManagerImpl.a(ComponentManagerImpl.java:116)
at com.intellij.openapi.components.impl.ComponentManagerImpl.initComponents(ComponentManagerImpl.java:371)
at com.intellij.openapi.components.impl.ComponentManagerImpl.init(ComponentManagerImpl.java:86)
at com.intellij.openapi.project.impl.ProjectImpl.init(ProjectImpl.java:250)
at com.intellij.openapi.project.impl.ProjectManagerImpl.a(ProjectManagerImpl.java:265)
at com.intellij.openapi.project.impl.ProjectManagerImpl.a(ProjectManagerImpl.java:293)
at com.intellij.openapi.project.impl.ProjectManagerImpl.access$200(ProjectManagerImpl.java:72)
at com.intellij.openapi.project.impl.ProjectManagerImpl$6.run(ProjectManagerImpl.java:455)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$3.run(ProgressManagerImpl.java:244)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:422)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$4.run(ProgressManagerImpl.java:255)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:197)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:222)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:188)
at com.intellij.openapi.application.impl.ApplicationImpl$6$1.run(ApplicationImpl.java:490)
at com.intellij.openapi.application.impl.ApplicationImpl$5.run(ApplicationImpl.java:329)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
at java.lang.Thread.run(Thread.java:613)
at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:125)
Anonymous
10.02.2010
Any chance of javascript regex support? Particularly is it possible to "copy" the regex as a whole instead of having to reassemble the pieces (the pattern and the replace).
Anonymous
20.01.2010
Very useful plugin. I think it should be included in IDEA by default and supported by JetBrains team. Not working in IDEA 9, please update it.
Anonymous
21.10.2009
Please, update the plugin to make it be used within Idea 9.
Anonymous
18.10.2009
Doesn't seem to be working in 9.0 EAP/Beta.
Will there be an update?
17.06.2008
Very good and useful plugin. Some drawback are noted in previous comment and I hope they will be fixed. Nevertheless, it is a cool thing.
Anonymous
25.09.2007
Well, I can say I like it - been expecting something like this in IntelliJ IDEA for a while (had to use RegexBuddy in pair with this IDE). Some drawbacks I'd like to note though:

1. CTRL+C/V shrtcuts don't work when I want to copy paste regexes/text
2.I expected that double click on Quick Reference items will insert them at caret position in Pattern window
3.Button tooltips are not very informative - just repeating button caption is no good idea
4. Too many toolwindow parts by default - maybe consider switching between search and replace mode?
5. Toolbar buttons look a little weird - what's the Library label for? Consider splitting toolbar in parts - one for view mode, another for regex matching mode, another for regex management (add, remove, etc).
6. There sholud be a warning when I want to remove the regex.
Anonymous
20.04.2007
This has saved me a lot of time, thank you!
17.06.2006
Yeah also one of my must have plugins for IDEA.

It's so good that Jetbrains should consider bundling it with IDEA.
Anonymous
09.06.2006
A good way to test regex expressions without compiling a project.
Please  sign in  to leave a comment.