﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-asdtiang-java study-文章分类-groovy</title><link>http://www.blogjava.net/asdtiang/category/43716.html</link><description>交流学习JAVA </description><language>zh-cn</language><lastBuildDate>Mon, 29 Mar 2010 11:06:15 GMT</lastBuildDate><pubDate>Mon, 29 Mar 2010 11:06:15 GMT</pubDate><ttl>60</ttl><item><title>groovy 中的正则表达式</title><link>http://www.blogjava.net/asdtiang/articles/310542.html</link><dc:creator>asdtiang</dc:creator><author>asdtiang</author><pubDate>Fri, 22 Jan 2010 08:54:00 GMT</pubDate><guid>http://www.blogjava.net/asdtiang/articles/310542.html</guid><wfw:comment>http://www.blogjava.net/asdtiang/comments/310542.html</wfw:comment><comments>http://www.blogjava.net/asdtiang/articles/310542.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/asdtiang/comments/commentRss/310542.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/asdtiang/services/trackbacks/310542.html</trackback:ping><description><![CDATA[
		<p>这几天在学习groovy，文档不多，尤其是中文的，所以自己在看groovy自带的英语文档.<br />groovy的版是1.7.0<br />在网上看了下groovy的正则表达式，和文档描述的不一样，<br />写出来，方便学习。其实就是贴图。<br /><img height="215" alt="" src="http://www.blogjava.net/images/blogjava_net/asdtiang/groovyRegex1.jpg" width="881" border="0" /><br /><img style="WIDTH: 887px; HEIGHT: 605px" height="605" alt="" src="http://www.blogjava.net/images/blogjava_net/asdtiang/groovyRegex.jpg" width="887" border="0" /></p>
		<br />英文好的就不用解释。<br />由于可能图片显示不出来，简单翻译下：<br />regular=/[^a][a-z]*/       //在groovy中定义一个正则表达式,正则表达式以/开始，以/结束<br />println "potatoe"==~ /potatoe/   //在groovy中测试一个字符串是否满足一个正则表达式，用==~<br />a? 表示一个或零个a<br />a* 表示零个或n个a（零个或以上）<br />a+ 表示n个a（1个或以上）<br />a{n} 表示n个a（如，a{3}表示3个a，即aaa）<br />a|b 表示a或b<br />[abcd] 表示a或b或c或d，相当于a|b|c|d<br />[a-z] 表示a到z之间的任意一个，同理[A-Z]是A到Z之间的任意一个<br />^a 表示以a开头，注意区分：[^a]不以a开头<br /><br />一个替换的例子：<br />excerpt="At school,Harry had no one. Everybody kenw that Dudley's gang hated that odd Harry Potter "+<br />       "in hits baggy old clothes and broken glasses,adn nobody liked to disagree with Dudley's gang."<br />matcher=(excerpt=~/Harry Potter/)<br />excerpt=matcher.replaceAll("Tanya Grotter")<br />println excerpt<br />matcher =(excerpt=~/Harry/)<br />excerpt=matcher.replaceAll("Tanya")<br />println excerpt<img src ="http://www.blogjava.net/asdtiang/aggbug/310542.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/asdtiang/" target="_blank">asdtiang</a> 2010-01-22 16:54 <a href="http://www.blogjava.net/asdtiang/articles/310542.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>