ÕýÔò±í´ïʽѧϰ×ܽá, ¸½javaÔ´Âë
×éµÄ¸ÅÄî, ÌáÈ¡×éÐÅÏ¢
/**
* ÕýÔò±í´ïʽ¿ÉÒÔ»®·Ö²»Í¬µÄ×é,È¡³ö×éµÄÃû³Æ,À¨ºÅ¼´¿É, ¼´ËùνµÄ²¶»ñ×é
* 1. Ïà¹ØÖªÊ¶: ²»²¶»ñÓÃ(?:expression) ±íʾÕâ×é²»ÐèÒª²¶»ñ
*
*
*/
public static void groupTest() {
String src = "xxxxxxxxxx2009-1-17-19-07-16yyyyy2001-02-18-19-07-16q";
String regex = "(\\w{4})(\\d{4}-\\d{1,2}-\\d{1,2}-\\d{1,2}-\\d{1,2}-\\d{1,2})";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(src);
displayMatchResult(matcher);
}
»ò¹ØÏµµÄ±í´ï
/**
* 1. µ¥¸ö×Ö·û»òÕßÊý×ÖµÄ"»ò¹ØÏµ"ÓÃ[]¼´¿É, ÕâÀï²»×öչʾ
* 2. ¶à¸ö×Ö·ûµÄ"»ò¹ØÏµ"ÓÃÀ¨ºÅչʾ
* 3. ÌáÈ¡À¨ºÅµÄÄÚÈÝ, Çë¿´ÏÂÃæµÄÀý×Ó, ¹Ø×¢groupµÄindex
* 4. ÕâÀïµÄGroup¿ÉÒÔ²»²¶»ñ£¬²»²¶»ñµÄ·½Ê½ÊÇ(?:expression)
* 5. ÕâÀïÍÆ³öµÄÎÊÌâÊÇ:"·ÇÂß¼¹ØÏµÔõô¸ã"(ÓëÂß¼¹ØÏµ¾ÍËãÁË, ĬÈϵͼÊÇÓëÂß¼¹ØÏµ)
* 6. ·Ç¹ØÏµ, ¹éÀൽ"Áã¿í¶È"ÖÐ
*
*/
public static void groupOr_Nested()
{
String src = "x1111abcxxxyyy";
String regex = "((?:x1111|y2222)abc)xxx";
//String regex = "((x1111|y2222)abc)xxx";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(src);
displayMatchResult(matcher);
}
̰À·ºÍ·Ç̰À·Æ¥Åä
/**
* ̰À·Æ¥ÅäºÍ·Ç̰À·Æ¥ÅäµÄ±È½Ï
* ÕâÊÇÒ»¸ö¼Ó²»¼ÓÎʺõÄÎÊÌâÁË
*/
public static void greedCompare()
{
String src = "<p class=\"author\"> <strong>admin </strong></strong> ·¢±íÓÚ 2009-5-14 16:49 </p><h3>ÌáÈ¡Ìû×ÓÄÚÈÝ </h3>“ÌáÈ¡Õâ¾ä»°”<br /> <br />";
/**·Ç̰À·Æ¥ÅäÓÃÏÂÃæ*/
//String regex = "<strong>(.*?)</strong>";
/**̰À·Æ¥ÅäÓÃÏÂÃæ */
String regex = "<strong>(.*)</strong>";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(src);
displayMatchResult(matcher);
}
Ìæ»»×Ö·û
/**
* Ìæ»», ¸Ã·½·¨ºÜË®, ¼òµ¥µÄ¿ÉÓÃ, ¸´ÔÓµÄ
* Ó¦¸Ãͨ¹ýmatch.star(groupIndex)À´ÕÒλÖñȽϷ½±ã
*/
public static void replaceMatch()
{
String src = "xxxxxxxxxx200
Ïà¹ØÎĵµ£º
ListµÄÓ÷¨
List°üÀ¨List½Ó¿ÚÒÔ¼°List½Ó¿ÚµÄËùÓÐʵÏÖÀà¡£ÒòΪList½Ó¿ÚʵÏÖÁËCollection½Ó¿Ú£¬ËùÒÔList½Ó¿ÚÓµÓÐCollection½Ó¿ÚÌṩµÄËùÓг£Ó÷½·¨£¬ÓÖÒòΪListÊÇÁбíÀàÐÍ£¬ËùÒÔList½Ó¿Ú»¹ÌṩÁËһЩÊʺÏÓÚ×ÔÉíµÄ³£Ó÷½·¨£¬Èç±í1Ëùʾ¡£
±í1 List½Ó¿Ú¶¨ÒåµÄ³£Ó÷½·¨¼°¹¦ÄÜ
´Ó±í1¿ÉÒÔ¿´³ö£¬List½Ó¿ÚÌṩµÄÊʺÏÓÚ×ÔÉíµÄ ......
ºÜ¿ÉÄܽ« Groovy µ±³ÉÊÇûÓйæÔòµÄ Java ´úÂë¡£µ«Êµ¼ÊÉÏ£¬Groovy Ö»ÊǹæÔòÉÙһЩ¡£ÕâÒ»½ÚµÄÖØµãÊÇʹÓà Groovy ±àд Java Ó¦ÓóÌÐòʱ¿ÉÒÔ²»Óÿ¼ÂǵÄÒ»¸ö Java ±à³ÌµÄ¾ßÌå·½Ãæ£ºÀàÐͶ¨Òå¡£
ΪʲôҪÓÐÀàÐͶ¨Ò壿
ÔÚ Java ÖУ¬Èç¹ûÒªÉùÃ÷Ò»¸ö String ±äÁ¿£¬Ôò±ØÐëÊäÈ룺
String value = "Hello World";
µ«ÊÇ£¬Èç¹û×ÐϸÏëÏ ......
ͨ¹ý Groovy ½øÐÐÑ»·
ͬ´ó¶àÊý½Å±¾ÓïÑÔÒ»Ñù£¬Groovy ¾³£±»Ðû´«ÎªÉú²úÁ¦¸ü¸ß µÄ Java ÓïÑÔÌæ´úÆ·¡£ÄúÒѾ¿´µ½ÁË Groovy ȱÉÙÀàÐÍÄܹ»ÈçºÎ¼õÉÙ´ò×Ö¹¤×÷¡£ÔÚÕâÒ»½Ú£¬½«´´½¨²¢ÊÔÓÃÒ»¸ö repeat º¯Êý¡£ÔÚÕâ¸ö¹ý³ÌÖУ¬½«½øÒ»²½Ì½Ë÷ Groovy Ìá¸ßЧÂʵķ½Ê½¡£
¸üºÃ¡¢¸ü¶ÌµÄÑ»·
ÏÂÃæÕâÖÖ·½·¨¿ÉÒÔ¸üºÃµØ¸ÐÊÜ Groovy ȱ·¦ÀàÐ͵ĺà ......
¡¾Ò»¡¿»ùÓÚ×Ö½ÚµÄÊäÈëÁ÷
ÖµµÃ×¢ÒâµÄµØ·½ÓУº
¢ÙLevel 2µÄÊäÈëÁ÷£¬´ó¶àÊý¶¼»áÖ¸Ã÷Êý¾ÝÔ´µÄÐÎʽ£ºÀýÈçByteArray£¬File£¬Piped
¢ÚLevel 3µÄÊäÈëÁ÷£¬Ôò²»»á³öÏÖ¾ßÌåµÄÊý¾ÝÔ´Ãû×Ö£¬¶øÊÇÒÔ¹¦ÄÜÈ¡´ú£ºÀýÈçBuffered£¬LineNumber
ËùÒÔ˵Level 3µÄÊäÈëÁ÷ÊǶÔLevel 2ÊäÈëÁ÷µÄ“·â×°ºÍ¹ýÂË”¡£Êµ¼ÊÉÏLevel 2µÄÊäÈëÁ÷£¬¶¼¼ ......