javaÕýÔò±í´ïʽÖеÄÊýÁ¿´Ê
javaÖеÄÕýÔòλÓÚjava.util.regex°üÖУ¬Õâ¸ö°üÖÐÖ»ÓÐÒ»¸öMatchResult½Ó¿ÚºÍMatcher¡¢PatternÁ½¸öÀà¡£
ÕýÔòÖеÄÊýÁ¿´ÊÓÐGreedy (̰À·)¡¢Reluctant(ÀÁ¶è)ºÍPossessive(ǿռ)ÈýÖÖ
Greedy ÊýÁ¿´Ê
X?
X£¬Ò»´Î»òÒ»´ÎҲûÓÐ
X*
X£¬Áã´Î»ò¶à´Î
X+
X£¬Ò»´Î»ò¶à´Î
X{n}
X£¬Ç¡ºÃ n ´Î
X{n,}
X£¬ÖÁÉÙ n ´Î
X{n,m}
X£¬ÖÁÉÙ n ´Î£¬µ«ÊDz»³¬¹ý m ´Î
GreedyÊÇ×î³£Óõģ¬ËüµÄÆ¥Å䷽ʽÊÇÏȰÑÕû¸ö×Ö·û´®ÍÌÏ£¬È»ºóÆ¥ÅäÕû¸ö×Ö·û´®£¬Èç¹û²»Æ¥Å䣬¾Í´ÓÓÒ¶ËͳöÒ»¸ö×Ö·û£¬ÔÙ½øÐÐÆ¥Å䣬ֱµ½ÕÒµ½Æ¥Åä»ò°ÑÕû¸ö×Ö·û´®ÍÂÍêΪֹ¡£
Matcher m=Pattern.compile("a.*b")
.matcher("a====b=========b=====");
while(m.find()){
System.out.println(m.group());
}
Êä³ö£º
a====b=========b
ÒòΪ×ÜÊÇ´Ó×î´ó Æ¥Å俪ʼƥÅ䣬¹Ê³ÆÌ°À·¡£
Reluctant ÊýÁ¿´Ê
X??
X£¬Ò»´Î»òÒ»´ÎҲûÓÐ
X*?
X£¬Áã´Î»ò¶à´Î
X+?
X£¬Ò»´Î»ò¶à´Î
X{n}?
X£¬Ç¡ºÃ n ´Î
X{n,}?
X£¬ÖÁÉÙ n ´Î
X{n,m}?
X£¬ÖÁÉÙ n ´Î£¬µ«ÊDz»³¬¹ý m ´Î
ReluctantÕýºÃºÍGreedyÏà·´£¬ËüÏÈ´Ó×îСƥÅ俪ʼ£¬ÏÈ´Ó×ó¶ËÍÌÈëÒ»¸ö×Ö·û£¬È»ºó½øÐÐÆ¥Å䣬Èô²»Æ¥Åä¾ÍÔÙÍÌÈëÒ»¸ö×Ö·û£¬Ö±µ½ÕÒµ½Æ¥Åä»ò½«Õû¸ö×Ö·û´®ÍÌÈëΪֹ¡£
Matcher m=Pattern.compile("a.*?b")
.matcher("a====b=========b=====");
while(m.find()){
System.out.println(m.group());
}
Êä³ö£º
a====b
ÒòΪ×ÜÊÇ´Ó×îСƥÅ俪ʼ£¬¹Ê³ÆÀÁ¶è¡£
Possessive ÊýÁ¿´Ê
X?+
X£¬Ò»´Î»òÒ»´ÎҲûÓÐ
X*+
X£¬Áã´Î»ò¶à´Î
X++
X£¬Ò»´Î»ò¶à´Î
X{n}+
X£¬Ç¡ºÃ n ´Î
X{n,}+
X£¬ÖÁÉÙ n ´Î
X{n,m}+
X£¬ÖÁÉÙ n ´Î£¬µ«ÊDz»³¬¹ý m ´Î
PossessiveºÍGreedyµÄÆ¥Å䷽ʽһÑù£¬ÏȰÑÕû¸ö×Ö·û´®ÍÌÏ£¬È»ºóÆ¥ÅäÕû¸ö×Ö·û´®£¬Èç¹ûÆ¥Å䣬¾ÍÈÏΪƥÅ䣬Èç¹û²»Æ¥Å䣬¾ÍÈÏΪÕû¸ö×Ö·û´®²»Æ¥Å䣬Ëü²»»á´ÓÓÒ¶ËͳöÒ»¸ö×Ö·û´®ÔÙ½øÐÐÆ¥Å䣬ֻ½øÐÐÒ»´Î
Matcher m=Pattern.compile("a.*+b")
.matcher("a====b=========b=====");
while(m.find()){
System.out.println(m.group());
}
Êä³ö£º
ÒòΪ̰À·µ«²¢²»´ÏÃ÷£¬¹Ê³ÆÇ¿Õ¼¡£
Ïà¹ØÎĵµ£º
2006ÄêÎÒÔø¾Ð´¹ýһƪÌÖÂÛJavaδÀ´µÄÎÄÕ£¬ÔÚÄÇÆªÎÄÕÂÖÐÎÒÌÖÂÛÁË¿ªÔ´¡¢JavaÔÚÏû·Ñµç×ÓÉ豸ÖеÄʹÓã¬ÏÖÔÚÔÚËùÓÐÀàÐ͵ÄÒÆ¶¯É豸ÉÏJavaµÄÓ¦ÓÃÕýÔÚÖð²½ÉÏÉý¡£¶ÔSun±»ÊÕ¹ºÒ»Ê£¬ÒÔ¼°JavaÓëOracle²úÆ·¼¯³ÉÎÒûʲôºÃÔ¤²âµÄ£¬Ò²Ã»Ê²Ã´ºÃµÄ½¨Ò飬ÎÒÖ»µ£ÐÄJavaµÄδÀ´»á×ßÏòºÎ·½?ÔÚÕâÆªÎÄÕÂÖÐÎÒÖØÐÂÉóÊÓÁËOracleÊÕ¹ºSunºóJavaµÄδÀ´Ö ......
ÎÄÕÂת×Ô£ºhttp://javastudy.blog.51cto.com/183528/78723
jsp¿ª·¢ÖÐµÄ ¼àÌýÆ÷ºÍ¹ýÂËÆ÷£¬ÕâÁ½¸ö¶«Î÷Ҫ˵ÆðÀ´£¬ºÜ´ó£¬ºÜ·±¡£½ñÌìÎÒÏëÓÃÒ»¸öÏÖʵµÄÀý×Ó£¬À´ËµÃ÷ÕâÁ½¸ö¶«¶«µÄ×÷Óá£
°¸ÀýÃèÊö
¼ÙÉèÄãÆ½Ê±Éú»îÔÚ±±¾©£¬ÓÐÌìÄãÈ¥Ò»¸öºÜ±ßÔ¶ºÜƶÇîµÄɽ´åÌåÑéÉú»î£¬µ½ÁËÄǸ ......
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®µÄ“ÈýÐֵܔ
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®³£ÓõÄÓÐÈý¸öÀࣺjava.lang.String¡¢java.lang.StringBuffer¡¢java.lang.StringBuilder£¬ÕâÈýÕߵĹ²Í¬Ö®´¦¶¼ÊÇfinalÀ࣬²»ÔÊÐí±»¼Ì³Ð£¬ÕâÖ÷ÒªÊÇ´ÓÐÔÄܺͰ²È«ÐÔÉÏ¿¼Âǵģ¬ÒòΪÕ⼸¸öÀà¶¼ÊǾ³£±»Ê¹ÓÃ×ŵģ¬ÇÒ¿¼Âǵ½·ÀÖ¹ÆäÖеIJÎÊý±»ÐÞ¸ÄÓ°Ïìµ½ÆäËüµÄÓ¦Óᣠ......
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®µÄ“ÈýÐֵܔ
JAVAÖÐÓÃÓÚ´¦Àí×Ö·û´®³£ÓõÄÓÐÈý¸öÀࣺjava.lang.String¡¢java.lang.StringBuffer¡¢java.lang.StringBuilder£¬ÕâÈýÕߵĹ²Í¬Ö®´¦¶¼ÊÇfinalÀ࣬²»ÔÊÐí±»¼Ì³Ð£¬ÕâÖ÷ÒªÊÇ´ÓÐÔÄܺͰ²È«ÐÔÉÏ¿¼Âǵģ¬ÒòΪÕ⼸¸öÀà¶¼ÊǾ³£±»Ê¹ÓÃ×ŵģ¬ÇÒ¿¼Âǵ½·ÀÖ¹ÆäÖеIJÎÊý±»ÐÞ¸ÄÓ°Ïìµ½ÆäËüµÄÓ¦Óᣠ......
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class j5_13 extends Applet implements ActionListener
{
Panel p=new Panel();//н¨²¼¾Ö
Label welcome,la1,li1,la2,li2,lresult;//Ìáʾ±êÇ©,·ûºÅ±êÇ©ÒÔ¼°¼ÆËã½á¹ûµÄ±êÇ©
TextField ta,tb,t ......