公司介绍 产品展示 业务支持 解决方案 文档资料
网站导航 访客留言 技术论坛
     
     
  产品资料
  业界动态
  JAVA技术


首  页 > 文档资料 > 产品资料  
 
  RegexPlugin:正则表达式的试验田

正则表达式是我们在开发中经常遇到的问题,但是其复杂度和不确定性足以让你敬畏,所以往往在进行正则表达式操作之前我们希望做一下穿刺(Spike),试验一下,以保证你在代码中的正则表达式操作是正确的。如何快速的进行正则表达式的穿刺,通常我们会有这两种解决方案:写一个JUnit测试,你需要编写Java代码,执行编译、运行等,非常麻烦;使用Perl,写一个很短的Scriptlet进行测试,Perl的正则表达式功能太强大,有可能不能在Java中应用,还要进行兼容测试,同时需要你对Perl了解、这里仍然需要少量的编码。有没有快速的方法进行正则表达式测试,同时也可以用作学习正则表达式的工具,这里我们就向你介绍RegexPlugin这款插件,让你使用和学习正则表达式更加方便。

RegexPlugin是一个允许你动态进行正则表达式试验的环境,它是基于Jdk 1.4的regex包,你可以操作该Java包支持的任何正则表达式。下面让我们看看如何使用RegexPlugin这个插件。

首先通过Plugin Manager下载RegexPlugin插件,重新启动IDEA后就会发现IDEA增加了一个“Regex”的工具窗口。在该窗口中,你就可以进行相关的正则表达式操作。

下边是对这个窗口选项的一些解释:

  1. 工具栏(toolbar):主要是一些针对窗口和正则表达式的全局操作,如保存某种表达式操作具体环境、设置全部替换、忽略大小写、将表达式拷贝为Java字符串、自动刷新等等。
  2. Pattern输入框:正则表达式
  3. Text:欲操作的文本,可以从文件中导入
  4. Replace:正则匹配后欲替换的文本
  5. Find Output:高亮显示所有匹配项
  6. Match Details:当你点击Find Output中匹配项链接,可以查看匹配的具体信息
  7. Replace Output:执行替换后的输出文本
  8. Reference:Jdk 1.4的regex的正则表达式操作参考资料

下面让我们看看一个具体的例子吧,如我们想把一段普通文本经过正则处理后输出到客户到的浏览器上,希望email能够以超级连接方式显示,下面就是我们的场景实例:

这是一下些具体设置选项:

匹配email的正则表达式为:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

替换文本为:(这里考虑到了group):<a href="mailto:$0">$0</a>

我们输入一段实际文本后,我们就会发现匹配结果,就是Replace Output,在Find Output中,显示了所有匹配项,当点击Find Ouput中的超级连接时,在Match Details文本框中会显示匹配的具体信息。最好我们希望将这种正则表达式场景(email匹配)保存下来,只需在Library后的文本框中录入一定意义的名称,按下回车即可,以后我们可以将这种场景再现出来,节省你类似正则表达式操作时间。

总结:正则表达式一直被认为程序员必备技术之一,事实上在软件开发中确实发挥非常大的作用,RegexPlugin插件就是简化在IDEA下正则表达式使用,同时提供参考,加上快捷的操作,同时也是程序员学习练习正则表达式好工具,相信通过RegexPlugin掌握和应用正则表达式将非常简单。