ÓÅ»¯JavaÖеÄÕýÔò±í´ïʽ
ÔÎĵØÖ·£º http://www.javaworld.com/javaworld/jw-09-2007/jw-09-optimizingregex.html
Èç¹ûÄ㻨·ÑÁËÊýСʱºÍÕýÔò±í´ïʽ×ö¶·Õù£¬Ö»ÊÇΪÁËÈÃËüÍê³ÉËü¼¸ÃëÄھͿÉÒÔÍê³ÉµÄÆ¥Å䣬ÄÇôÕâÆªÎÄÕÂÕýÊÇΪÄãÁ¿Éí¶¨×öµÄ¡£Cristian
MocanuÖ¸³öÁËÔÚʲôµØ·½ÕýÔòģʽƥÅä»á·¢ÉúÑÓ³Ù£¬²¢ÇÒ½âÊÍÁËΪʲô¡£È»ºó£¬ËûÑÝʾÁËÈçºÎ×ö¸ü¶àµÄ»ØËõ£¨backtracking£©¶ø²»ÊÇÃÔʧÔÚÆä
ÖУ¬ÈçºÎÓÅ»¯Ì°À·Ä£Ê½ºÍÃãǿģʽ£¨ÒëÕß×¢--Õâ¸ö·ÒëÊÇÔÚÍøÉϲ鵽£¬×ܸоõ²»Ì«ºÏÊÊ£¬ÔÎÄÊÇreluctant
quantifier£©£¬ÒÔ¼°Possessive
quantifiers£¨ÒëÕß×¢--Õâ¸öÓеĵط½³ÆÎªÇÀÕ¼Á¿×Ó£©¡¢¶ÀÁ¢·Ö×飨independent
grouping£©ºÍ»·ÊÓ£¨look-around£©ÎªÊ²Ã´ÊÇÄãµÄÅóÓÑ¡£
±àдÕýÔò±í´ïʽ²»½ö½öÊÇÒ»ÖÖ¼¼ÇÉ£¬¸üÊÇÒ»ÖÖÒÕÊõ --Jeffrey Friedl
±¾ÎÄÖУ¬ÎÒ½«½éÉÜһЩÕýÔò±í´ïʽÖÐʹÓÃĬÈϵÄjava.util.regex°üµÄ³£¼ûȱµã¡£ÎÒ½«½âÊÍΪʲô»ØËõ£¨backtracking£©¼ÈÊÇʹÓÃÕýÔò
±í´ïʽ½øÐÐģʽƥÅäµÄ»ù´¡£¬ÓÖÊÇÓ¦ÓóÌÐò´úÂëÖеij£¼ûÆ¿¾±£»ÎªÊ²Ã´ÔÚʹÓÃ̰À·Ä£Ê½ºÍÃãǿģʽҪѧ»á½÷É÷£¬ÒÔ¼°ËüÊÇÄãÕýÔò±í´ïʽÓÅ»¯µÄÒªËØ¡£È»ºóÎÒ»á½éÉÜÓÅ
»¯ÕýÔò±í´ïµÄ¼¼ÇÉ£¬²¢ÌÖÂÛͨ¹ýJavaģʽƥÅäÒýÇæÔËÐÐеÄÕýÔò±í´ïʽʱ»á·¢Éúʲô¡£
»ùÓÚ±¾ÎĵÄÄ¿µÄ£¬ÎÒ¼ÙÉèÄãÒѾÓÐʹÓÃÕýÔò±í´ïʽµÄ¾Ñ飬²¢ÇÒ¶ÔÔÚJava´úÂëÖÐÓÅ»¯ËüÃDZ§ÓкܴóµÄÐËȤ¡£±¾ÎÄÖ÷Ìâ°üÀ¨¼òµ¥ºÍ×Ô¶¯ÓÅ»¯ÓÅ»¯¼¼ÇÉ£¬ÒÔ¼°ÈçºÎʹ
ÓÃÇÀÕ¼Á¿×Ó£¨possessive quantifiers£©¡¢¶ÀÁ¢·Ö×飨independent
grouping£©ºÍ»·ÊÓ£¨lookarounds£©ÓÅ»¯Ì°À·Ä£Ê½ºÍÃãǿģʽ£¨greedy and reluctant
quantifiers£©¡£¹ØÓÚJavaÖÐÕýÔò±í´ïʽµÄ½éÉÜ£¬Çë²Î¿¼±¾ÎĵÄ×ÊÔ´²¿·Ö¡£
JavaģʽƥÅäÒýÇæºÍ»ØËõ£¨The Java pattern-matching engine and backtracking£©
java.util.regex
°ü
ʹÓÃÒ»ÖÖ³ÆÎª·ÇÈ·¶¨ÐÔµÄÓÐÏÞ×Ô¶¯»ú£¨Nondeterministic Finite
Automaton£¬¼ò³ÆÎªNFA£©µÄģʽƥÅäÒýÇæ¡£Ö®ËùÒÔ³ÆÖ®Îª·ÇÈ·¶¨ÐԵģ¬ÊÇÒòΪµ±³¢ÊÔʹÓÃÊäÈëµÄ×Ö·û´®Æ¥ÅäÒ»¸öÕýÔò±í´ïʽʱ£¬Ã¿Ò»¸ö×Ö·û»áÒòΪÕýÔò
±í´ïʽµÄ²»Í¬²¿·Ö¶ø±»¶à´Î¼ì²é¡£ÕâÒ²ÊÇÒ»ÖÖÔÚ.NET¡¢PHP¡¢Perl¡¢PythonºÍRuby±»¹ã·ºÊ¹ÓõÄÒýÇæ¡£Ëü½«´ó²¿·
Ïà¹ØÎĵµ£º
1¡¢ÀàµÄÐÞÊηû·ÖΪ£º¿É·ÃÎÊ¿ØÖÆ·ûºÍ·Ç·ÃÎÊ¿ØÖÆ·ûÁ½ÖÖ¡£
¿É·ÃÎÊ¿ØÖÆ·ûÊÇ£º¹«¹²ÀàÐÞÊηû public
·Ç·ÃÎÊ¿ØÖÆ·ûÓУº³éÏóÀàÐÞÊηû abstract £»×îÖÕÀàÐÞÊηû final
1 £©¹«¹²ÀàÐÞÊηû public £º Java ÓïÑÔÖÐÀàµÄ¿É·ÃÎÊ¿ØÖÆ·ûÖ»ÓÐÒ»¸ö£º public ¼´¹«¹²µÄ¡£Ã¿¸ö Java ³ÌÐòµÄÖ÷Àà¶¼±ØÐëÊÇ public Àà×÷Ϊ¹«¹²¹¤¾ß¹©ÆäËüÀàºÍ³ÌÐòÊ¹Ó ......
¶ÔÓÚÕâ¸öϵÁÐÀïµÄÎÊÌ⣬ÿ¸öѧJavaµÄÈ˶¼Ó¦¸Ã¸ã¶®¡£µ±È»£¬Èç¹ûÖ»ÊÇѧJavaÍæÍæ¾ÍÎÞËùνÁË¡£Èç¹ûÄãÈÏΪ×Ô¼ºÒѾ³¬Ô½³õѧÕßÁË£¬È´²»ºÜ¶®ÕâЩÎÊÌ⣬Ç뽫Äã×Ô¼ºÖعé³õѧÕßÐÐÁС£ÄÚÈݾùÀ´×ÔÓÚCSDNµÄ¾µäÀÏÌù¡£Èç¹û´ó¼Ò¸Ð¾õÔÚ»ù´¡Ñ§Ï°×Ô¼º±¡ÈõµÄÒ²¿ÉÒÔÄdzöÀ´¹²Ïí,¹²Í¬Ñ§Ï°.
&nb ......
java 23ÖÖÉè¼ÆÄ£Ê½£¬Ò»°ãÇé¿öÏ£¬³£ÓõÄÓÐÄÄЩ?
¹¤³§Ä£Ê½£¬ ¹¤³§·½·¨Ä£Ê½£¬µ¥Àýģʽ£¬ Íâ¹Û£¨Facade£©Ä£Ê½£¬ ¹Û²ìÕߣ¨Observer£©Ä£Ê½£¬ÇŽӣ¨Bridge£©Ä£Ê½¶¼ÊDZȽϳ£Óõ쬲»Í¬µÄÏîÄ¿Óв»Í¬µÄÉè¼Æ·½Ïò£¬¿ÉÒԲο¼µÄÉè¼ÆÄ£Ê½Ò²²»¾¡Ïàͬ£¬Ã»Óж¨Êý£¬Ö»ÊÇÉÏÃæÕ⼸¸öģʽÓõıȽ϶àһЩ¡£
ÆäËûµÄÄ ......
1.ÄãÐèÒª¾«Í¨ÃæÏò¶ÔÏó·ÖÎöÓëÉè¼Æ(OOA/OOD)¡¢É漰ģʽ(GOF£¬J2EEDP)ÒÔ¼°×ÛºÏģʽ¡£ÄãÓ¦¸ÃÊ®·ÖÁ˽âUML£¬ÓÈÆäÊÇclass£¬object£¬interactionÒÔ¼°statediagrams¡£
¡¡¡¡2.ÄãÐèҪѧϰJAVAÓïÑԵĻù´¡ÖªÊ¶ÒÔ¼°ËüµÄºËÐÄÀà¿â
(collections£¬serialization£¬streams£¬networking£¬
multithreading£¬reflection£¬event£¬h ......
×¢£º1.·½·¨µÄ²ÎÊý length ÊÇÉú³ÉµÄËæ»úÊýµÄ³¤¶È¡£
2. Ö»ÏëÒª´óдµÄ×Öĸ ¿ÉÒÔʹ int choice =65£» Ö»ÏëҪСдµÄ×Öĸ£¬¾Í int choice =97£»
import java.util.Random;
public String getCharAndNumr(int length)
{
String val = " ......