锘??xml version="1.0" encoding="utf-8" standalone="yes"?> PermGen space鐨勫叏縐版槸Permanent Generation space,鏄寚鍐呭瓨鐨勬案涔呬繚瀛樺尯鍩烵utOfMemoryError: PermGen space浠庤〃闈笂鐪嬪氨鏄唴瀛樼泭鍑猴紝瑙e喅鏂規硶涔熶竴瀹氭槸鍔犲ぇ鍐呭瓨銆傝璇翠負浠涔堜細鍐呭瓨鐩婂嚭錛氳繖涓閮ㄥ垎鐢ㄤ簬瀛樻斁Class鍜孧eta鐨勪俊鎭?Class鍦ㄨ Load鐨勬椂鍊欒鏀懼叆PermGen space鍖哄煙錛屽畠鍜屽拰瀛樻斁Instance鐨凥eap鍖哄煙涓嶅悓,GC(Garbage Collection)涓嶄細鍦ㄤ富紼嬪簭榪愯鏈熷PermGen space榪涜娓呯悊錛屾墍浠ュ鏋滀綘鐨凙PP浼歀OAD寰堝CLASS鐨勮瘽,灝卞緢鍙兘鍑虹幇PermGen space閿欒銆傝繖縐嶉敊璇父瑙佸湪web鏈嶅姟鍣ㄥJSP榪涜pre compile鐨勬椂鍊欍?/p>
鏀規鏂規硶錛屽湪 run.bat 涓姞鍏ワ細-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m 鍥犱負欏圭洰涓紩鐢ㄤ簡寰堝鐨?jar 鍖咃紝鑰岃繖浜?jar 鍖呬腑鐨?class 淇℃伅浼氳 JBoss 鐨?class loader 鍔犺澆鍒?PermGen space 鍖哄煙錛屽湪 JVM 榛樿鐨勬儏鍐典笅錛岃閮ㄥ垎絀洪棿鐨勫ぇ灝忓彧鏈?4M錛屽湪 jar 鍖呴潪甯稿鐨勬儏鍐典笅錛屾樉鐒舵槸涓嶅鐢ㄧ殑錛屾墍浠ラ氳繃 -XX:MaxPermSize=256m 鎸囧畾鏈澶у煎悗鍗沖彲瑙e喅闂銆?/p>
鍙﹀錛屽鏋?heap 鍐呭瓨涓嶈凍鍑虹幇 java.lang.OutOfMemoryError: Java heap space 鏃訛紝鍙互閫氳繃 -Xmx512m 鎸囧畾鏈澶?heap 鍐呭瓨鏉ヨВ鍐寵繖鏍風殑闂銆?/p>
]]>import org.papervision3d.objects.parsers.Collada; //寮曠敤鐨凜ollada鍖?/span>
private var carcollada:Collada;//澹版槑Collada涓篶arcollada
var carcollada=new Collada("妯″瀷.XML鎴杁ae");//瀵煎叆澶栭儴妯″瀷鏂囦歡
carcollada.addEventListener(FileLoadEvent.LOAD_COMPLETE, 瀹屾垚鍚庤鎬庝箞鍔炵殑鏂規硶);
2.Dae綾?/strong>錛氬0鏄庡鍑犳錛岃鍙栨參涓鐐癸紝鏀寔楠ㄩ鍔ㄧ敾絳夛紝鑰屼笖榪樺湪涓嶆柇娣誨姞鏂扮殑鍔熻兘銆?br />
浣跨敤Flex涓殑Tree鎺т歡鏃跺欙紝浣犲彲鑳藉緢涓嶅枩嬈㈠畠榛樿鐨勫瑙傘傞偅涓皷灝栫殑綆ご鍜岃妭鐐瑰墠闈笐闄嬬殑鍥炬爣寰堥毦鐪嬨傚鏋滈渶瑕佹敼鍙樺畠錛屽彲浠ヤ嬌鐢ㄤ笅闈㈠嚑涓睘鎬э細
浣跨敤鐩墠鎻愪緵鐨勫伐鍏峰彲浠ュ畬鎴愬緢澶氬伐浣溿備絾鏄紝瑕佷嬌鐢?[0-9] 琛ㄧず妯″紡涓殑姣忎釜鏁板兼暟瀛楋紝鎴栵紙鏇寸碂錛変嬌鐢?[0 -9a -zA-Z]琛ㄧず浠諱綍瀛楁瘝鏁板瓧瀛楃錛岃繕鏈変竴孌電浉褰撴極闀跨殑榪囩▼銆備負浜嗗噺杞誨鐞嗚繖浜涘父鐢ㄤ絾鍐楅暱妯″紡鐨勭棝鑻︼紝浜嬪厛瀹氫箟浜嗛瀹氫箟鍏冨瓧絎﹂泦鍚堛傛鍒欒〃杈懼紡鐨勪笉鍚屽疄鐜板畾涔変簡涓嶅悓鐨勯瀹氫箟鍏冨瓧絎﹂泦鍚堬紝涓嬮潰鎻忚堪鐨勯瀹氫箟鍏冨瓧絎﹂泦鍚堝湪 .NET Framework 涓緱鍒?System.Text.RegularExpressions API 鐨勬敮鎸併傝繖浜涢瀹氫箟鍏冨瓧絎︾殑鏍囧噯璇硶鏄紝鍦ㄥ弽鏂滄潬 \ 鍚庤窡涓涓垨澶氫釜瀛楃銆傚鏁伴瀹氫箟鍏冨瓧絎﹀彧鏈変竴涓瓧絎︼紝瀹冧滑鐨勪嬌鐢ㄥ緢瀹規槗錛屾槸鍐楅暱瀛楃綾葷殑鐞嗘兂鏇夸唬瀛楃銆備互涓嬫槸涓や釜紺轟緥錛?strong>\d 鍖歸厤鎵鏈夋暟鍊兼暟瀛楋紝\w 鍖歸厤鎵鏈夊崟璇嶅瓧絎︼紙瀛楁瘝鏁板瓧鍔犱笅鍒掔嚎錛夈備緥澶栨儏鍐墊槸涓浜涚壒瀹氬瓧絎︿唬鐮佸尮閰嶏紝姝ゆ椂蹇呴』鎸囧畾鎵鍖歸厤瀛楃鐨勫湴鍧錛屽 \u000D 灝嗗尮閰?Unicode 鍥炶濺絎︺備笅闈㈠垪鍑轟竴浜涙渶甯哥敤鐨勫瓧絎︾被鍙婂叾絳夋晥鐨勫厓瀛楃銆?/p>
鍏冨瓧絎?/p> |
絳夋晥瀛楃綾?/p> |
---|---|
\a |
鍖歸厤閾冨0錛堣鎶ワ級錛沑u0007 |
\b |
鍖歸厤瀛楃綾誨鐨勫瓧杈圭晫錛屽畠鍖歸厤閫鏍煎瓧絎︼紝\u0008 |
\t |
鍖歸厤鍒惰〃絎︼紝\u0009 |
\r |
鍖歸厤鍥炶濺絎︼紝\u000D |
\w |
鍖歸厤鍨傜洿鍒惰〃絎︼紝\u000B |
\f |
鍖歸厤鎹㈤〉絎︼紝\u000C |
\n |
鍖歸厤鏂拌錛孿u000A |
\e |
鍖歸厤杞箟絎︼紝\u001B |
\040 |
鍖歸厤 3 浣?8 榪涘埗 ASCII 瀛楃銆俓040 琛ㄧず絀烘牸錛堝崄榪涘埗鏁?32錛夈?/p> |
\x20 |
浣跨敤 2 浣?16 榪涘埗鏁板尮閰?ASCII 瀛楃銆傛渚嬩腑錛孿x2- 琛ㄧず絀烘牸銆?/p> |
\cC |
鍖歸厤 ASCII 鎺у埗瀛楃錛屾渚嬩腑鏄?ctrl-C銆?/p> |
\u0020 |
浣跨敤 4 浣?16 榪涘埗鏁板尮閰?Unicode 瀛楃銆傛渚嬩腑 \u0020 鏄┖鏍箋?/p> |
\* |
涓嶄唬琛ㄩ瀹氫箟瀛楃綾葷殑浠繪剰瀛楃閮藉彧浣滀負璇ュ瓧絎︽湰韜寰呫傚洜姝わ紝\* 絳夊悓浜?\x 2A錛堟槸鏂囧瓧 *錛屼笉鏄?* 鍏冨瓧絎︼級銆?/p> |
\p{name} |
鍖歸厤宸插懡鍚嶅瓧絎︾被“name”涓殑浠繪剰瀛楃銆傛敮鎸佸悕縐版槸 Unicode 緇勫拰鍧楄寖鍥淬備緥濡傦紝Ll銆丯d銆乑銆両sGreek銆両sBoxDrawing 鍜?Sc錛堣揣甯侊級銆?/p> |
\p{name} |
鍖歸厤宸插懡鍚嶅瓧絎︾被“name”涓笉鍖呮嫭鐨勬枃鏈?/p> |
\w |
鍖歸厤浠繪剰鍗曡瘝瀛楃銆傚浜庨潪 Unicode 鍜?ECMAScript 瀹炵幇錛岃繖絳夊悓浜?[a-zA-Z_0-9]銆傚湪 Unicode 綾誨埆涓紝榪欑瓑鍚屼簬 [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]銆?/p> |
\W |
\w 鐨勫惁瀹氾紝絳夋晥浜?ECMAScript 鍏煎闆嗗悎 [^a-zA-Z_0-9] 鎴?Unicode 瀛楃綾誨埆 [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]銆?/p> |
\s |
鍖歸厤浠繪剰絀虹櫧鍖哄煙瀛楃銆傜瓑鏁堜簬 Unicode 瀛楃綾?[\f\n\r\t\v\x85\p{Z}]銆傚鏋滀嬌鐢?ECMAScript 閫夐」鎸囧畾 ECMAScript 鍏煎鏂瑰紡錛孿s 絳夋晥浜?[ \f\n\r\t\v] 錛堣娉ㄦ剰鍓嶅絀烘牸錛夈?/p> |
\S |
鍖歸厤浠繪剰闈炵┖鐧藉尯鍩熷瓧絎︺傜瓑鏁堜簬 Unicode 瀛楃綾誨埆 [^\f\n\r\t\v\x85\p{Z}]銆傚鏋滀嬌鐢?ECMAScript 閫夐」鎸囧畾 ECMAScript 鍏煎鏂瑰紡錛孿S 絳夋晥浜?[^ \f\n\r\t\v] 錛堣娉ㄦ剰 ^ 鍚庣殑絀烘牸錛夈?/p> |
\d |
鍖歸厤浠繪剰鍗佽繘鍒舵暟瀛椼傚湪 ECMAScript 鏂瑰紡涓嬶紝絳夋晥浜?Unicode 鐨?[\p{Nd}]銆侀潪 Unicode 鐨?[0-9]銆?/p> |
\D |
鍖歸厤浠繪剰闈炲崄榪涘埗鏁板瓧銆傚湪 ECMAScript 鏂瑰紡涓嬶紝絳夋晥浜?Unicode 鐨?[\p{Nd}]銆侀潪 Unicode 鐨?[^0-9]銆?/p> |
寰堝浜洪兘鍠滄閫氳繃紺轟緥瀛︿範錛屼笅闈㈠嵆鎻愪緵涓浜涜〃杈懼紡紺轟緥銆傝鑾峰彇鏇村紺轟緥錛岃璁塊棶浠ヤ笅鍦板潃涓殑姝e垯琛ㄨ揪寮忚仈鏈烘暟鎹簱錛?a >http://www.regexlib.com/銆?/p>
妯″紡 |
璇存槑 |
---|---|
^\d{5}$ |
5 涓暟鍊兼暟瀛楋紝濡傜編鍥介偖鏀跨紪鐮併?/p> |
^(\d{5})|(\d{5}-\d{4}$ |
5 涓暟鍊兼暟瀛楁垨 5 涓暟瀛?鐭垝綰?4 涓暟瀛椼傚尮閰?5 浣嶆暟瀛楁牸寮忕殑緹庡浗閭斂緙栫爜錛屾垨 5 浣嶆暟瀛?+ 4 浣嶆暟瀛楁牸寮忕殑緹庡浗閭斂緙栫爜銆?/p> |
^(\d{5}(-\d{4})?$ |
涓庡墠涓涓浉鍚岋紝浣嗘洿鏈夋晥銆備嬌鐢?? 鍙嬌妯″紡涓殑 4 浣嶆暟瀛楁垚涓哄彲閫夐儴鍒嗭紝鑰屼笉鏄姹傚垎鍒瘮杈冧笉鍚岀殑涓や釜妯″紡錛堥氳繃鍙︿竴縐嶆柟寮忥級銆?/p> |
^[+-]?\d+(\.\d+)?$ |
鍖歸厤浠繪剰鏈夊彲閫夌鍙風殑瀹炴暟銆?/p> |
^[+-]?\d*\.?\d*$ |
涓庝笂涓涓浉鍚岋紝浣嗕篃鍖歸厤絀哄瓧絎︿覆銆?/p> |
^(20|21|22|23|[01]\d)[0-5]\d$ |
鍖歸厤 24 灝忔椂鍒舵椂闂村箋?/p> |
/\*.*\*/ |
鍖歸厤 C 璇█椋庢牸鐨勬敞閲?/* ... */ |
ASP.NET 鎻愪緵浜嗕竴濂楅獙璇佹帶浠訛紝涓庝嬌鐢ㄦ棫鐨勶紙鎴栨効鎰忕殑璇濅嬌鐢ㄤ紶緇熺殑錛?ASP 澶勭悊浠誨姟鐩告瘮錛岄獙璇佹帶浠朵嬌鍦?Web 紿椾綋涓婇獙璇佽緭鍏ュ彉寰楅潪甯稿鏄撱傚叾涓竴涓潪甯告湁鏁堢殑楠岃瘉鍣ㄦ槸 RegularExpressionValidator錛屽鎮ㄦ墍鏂欙紝瀹冨厑璁告偍鎻愪緵蹇呴』鍖歸厤杈撳叆鐨勬鍒欒〃杈懼紡鏉ラ獙璇佽緭鍏ャ傝緗帶浠剁殑 ValidationExpression 灞炴у彲鎸囧畾姝e垯琛ㄨ揪寮忕殑妯″紡銆備笅闈㈡樉紺轟簡楠岃瘉閭斂浠g爜瀛楁鐨勯獙璇佺▼搴忥細
<asp:RegularExpressionValidator runat="server" id="ZipCodeValidator" ControlToValidate="ZipCodeTextBox" ErrorMessage="Invalid ZIP code format; format should be either 12345 or 12345-6789." ValidationExpression="(\d{5}(-\d{4})?" />
浣跨敤 RegularExpressionValidator 瑕佹敞鎰忓嚑涓棶棰橈細
鍐充笉瑕佷嬌鐢ㄩ獙璇佺▼搴忚楠岃瘉鐨勬帶浠朵腑鐨勭┖瀛楃涓叉潵嬋媧婚獙璇佸櫒銆傚彧鏈?RequiredFieldValidator 鎵嶅彲浠ユ崟鑾風┖瀛楃涓層?/p>
鎮ㄦ棤闇鎸囧畾鍖歸厤瀛楃鐨勫紑濮嬩笌緇撳熬錛?strong>^ 鍜?strong>$錛? 瀹冧滑鏄簨鍏堝亣璁劇殑銆傚鏋滄坊鍔犱簡寮濮嬩笌緇撳熬錛屼篃娌℃湁浠諱綍褰卞搷錛屼笉闇瑕佽繖鏍峰仛銆?/p>
瀵逛簬鎵鏈夐獙璇佹帶浠舵潵璇達紝蹇呴』鍦ㄥ鎴風浠ュ強鏈嶅姟鍣ㄧ榪涜楠岃瘉銆傚鏋滄鍒欒〃杈懼紡涓嶆槸 ECMAScript 鍏煎鏂瑰紡錛屽鎴風楠岃瘉灝嗗け璐ャ備負浜嗛伩鍏嶈繖縐嶆儏鍐碉紝紜繚琛ㄨ揪寮忔槸 ECMAScript 鍏煎鏂瑰紡錛屽惁鍒欏彧鍦ㄦ湇鍔″櫒绔繘琛屾帶浠墮獙璇併?/p>
闄や簡 ASP.NET 楠岃瘉鎺т歡錛屽湪.NET 涓嬌鐢ㄦ鍒欒〃杈懼紡鐨勫ぇ澶氭暟鎯呭喌閮借浣跨敤 System.Text.RegularExpressions 鍛藉悕絀洪棿涓彂鐜扮殑綾匯傜壒鍒槸閭d簺鎮ㄥ笇鏈涚啛鎮夌殑涓葷被 Regex銆?strong>Match 鍜?MatchCollection銆?/p>
欏轟究璇翠竴涓嬶紝姝e垯琛ㄨ揪寮忕緝鍐欐牱寮?regex 鐨勫彂闊崇┒绔熸槸 /reg-eks/ 榪樻槸 /rej-eks/錛岃繕鏈変竴浜涗簤璁傛湰浜哄懼悜浜庡悗鑰咃紝浣嗕袱縐嶅彂闊抽兘鏈変笓瀹惰禐鍚岋紝鎵浠ラ夋嫨鍝釜鍙戦煶鐢辨偍鑷繁鍐沖畾銆?/p>
Regex 綾繪湁澶ч噺鐨勬柟娉曞拰灞炴э紝濡傛灉鎮ㄤ互鍓嶆病鏈夌敤榪囧畠錛屽彲鑳戒細鎰熷埌鏃犳墍閫備粠銆備笅闈㈡眹鎬諱簡涓浜涙渶甯哥敤鐨勬柟娉曪細
鏂規硶 |
璇存槑 |
---|---|
Escape / Unescape |
瀛楃涓蹭腑鐨勮漿涔夊厓瀛楃錛岀敤浣滆〃杈懼紡涓殑鏂囧瓧銆?/p> |
IsMatch |
濡傛灉姝e垯琛ㄨ揪寮忓湪杈撳叆瀛楃涓蹭腑鍙戠幇鍖歸厤錛岃繑鍥?#8220;Ture”銆?/p> |
Match |
濡傛灉鍦ㄨ緭鍏ュ瓧絎︿覆涓彂鐜板尮閰嶏紝鍒欒繑鍥炲尮閰嶅璞°?/p> |
Matches |
濡傛灉鍦ㄨ緭鍏ュ瓧絎︿覆涓彂鐜板寘鍚換浣曟垨鍏ㄩ儴鍖歸厤錛屽垯榪斿洖鍖歸厤闆嗗悎瀵硅薄銆?/p> |
Replace |
鐢ㄧ粰瀹氱殑鏇挎崲瀛楃涓叉浛鎹㈣緭鍏ュ瓧絎︿覆涓殑鍖歸厤銆?/p> |
Split |
灝嗚緭鍏ュ瓧絎︿覆鎷嗗垎鎴愮敤姝e垯琛ㄨ揪寮忓尮閰嶅垎寮鐨勬暟緇勫厓绱犳椂錛岃繑鍥炴暟緇勫瓧絎︿覆銆?/p> |
闄や簡鎸囧畾寰堝鏂規硶澶栵紝榪樻湁涓浜涢夐」鍙互鎸囧畾錛岄氬父鍦?Regex 瀵硅薄鏋勯犲嚱鏁頒腑銆傜敱浜庤繖浜涢夐」鏄綅灞忚斀鐨勪竴閮ㄥ垎錛屾垨璁稿彲浠ュ悓鏃舵寚瀹氳繖浜涢夐」錛堝錛屽彲浠ュ悓鏃舵寚瀹?Multiline 鍜?Singleline錛夈?/p>
鏂規硶 |
璇存槑 |
---|---|
Compiled |
褰撳湪寰幆涓墽琛岃澶氬尮閰嶆搷浣滄椂浣跨敤姝ら夐」銆傝繖鍙互鑺傜渷姣忎竴寰幆鐨勫垎鏋愯〃杈懼紡姝ラ銆?/p> |
Multiline |
瀹冧笌杈撳叆瀛楃涓蹭腑鐨勮鏁版病鏈夊叧緋匯傜‘鍒囧湴璇達紝瀹冨彧淇敼 ^ 鍜?$ 鐨勬柟寮忥紝浠ヤ究鍖歸厤琛屽紑濮?(BOL) 鍜岃緇撳熬 (EOL)錛岃屼笉鏄尮閰嶆暣涓緭鍏ュ瓧絎︿覆鐨勫紑濮嬪拰緇撳熬銆?/p> |
IgnoreCase |
浣挎ā寮忓湪鍖歸厤鎼滅儲瀛楃涓叉椂蹇界暐澶у皬鍐欍?/p> |
IgnorePatternWhitespace |
鍏佽鏍規嵁闇瑕佸湪妯″紡涓寘鎷換鎰忔暟閲忕殑絀虹櫧鍖哄煙錛屼篃鏀寔浣跨敤 (?# 娉ㄩ噴 #) 璇硶鍦ㄦā寮忎腑鍔犲叆娉ㄩ噴銆?/p> |
SingleLine |
瀹冧笌杈撳叆瀛楃涓蹭腑鐨勮鏁版病鏈夊叧緋匯傛洿紜垏鍦拌錛屽畠灝嗗鑷?.錛堝彞鐐癸級鍏冨瓧絎﹀尮閰嶄換鎰忓瓧絎︼紝鑰屼笉鏄櫎 \n 涔嬪鐨勪換鎰忓瓧絎︼紙榛樿鎯呭喌錛夈?/p> |
浣跨敤姝e垯琛ㄨ揪寮忓父鎵ц鐨勬搷浣滃寘鎷細楠岃瘉銆佸尮閰嶅拰鏇挎崲銆傚ぇ澶氭暟鎯呭喌涓嬶紝鍙互浣跨敤 Regex 綾葷殑闈欐佹柟娉曞畬鎴愯繖浜涙搷浣滐紝涓嶉渶瑕佸疄渚嬪寲 Regex 綾繪湰韜傝鎵ц楠岃瘉錛屽叏閮ㄨ鍋氱殑灝辨槸蹇呭緩鎴栨壘鍒版紜殑琛ㄨ揪寮忥紝鐒跺悗浣跨敤 Regex 綾葷殑 IsMatch() 鏂規硶灝嗚〃杈懼紡搴旂敤鍒拌緭鍏ュ瓧絎︿覆涓備緥濡傦紝涓嬮潰鐨勫嚱鏁版紨紺轟簡濡備綍浣跨敤姝e垯琛ㄨ揪寮忛獙璇侀偖鏀跨紪鐮侊細
private void ValidateZipButton_Click(object sender, System.EventArgs e) { String ZipRegex = @"^\d{5}$"; if(Regex.IsMatch(ZipTextBox.Text, ZipRegex)) { ResultLabel.Text = "ZIP is valid!"; } else { ResultLabel.Text = "ZIP is invalid!"; } }
綾諱技鐨勶紝鍙互浣跨敤闈欐?Replace() 鏂規硶灝嗗尮閰嶆浛鎹負鐗瑰畾瀛楃涓詫紝濡備笅鎵紺猴細
String newText = Regex.Replace(inputString, pattern, replacementText);
鏈鍚庯紝鍙互浣跨敤濡備笅浠g爜閬嶅巻杈撳叆瀛楃涓茬殑鍖歸厤闆嗗悎錛?/p>
private void MatchButton_Click(object sender, System.EventArgs e) { MatchCollection matches = Regex.Matches(SearchStringTextBox.Text, MatchExpressionTextBox.Text); MatchCountLabel.Text = matches.Count.ToString(); MatchesLabel.Text = ""; foreach(Match match in matches) { MatchesLabel.Text += "Found" + match.ToString() + " at position " + match.Index + ".<br>"; } }
閫氬父錛屽湪鎮ㄩ渶瑕佹寚瀹氶粯璁ゆ柟寮忎互澶栫殑鏂瑰紡鏃訛紝闇瑕佸疄渚嬪寲 Regex 綾葷殑瀹炰緥銆傜壒鍒槸鍦ㄨ緗夐」鏃躲備緥濡傦紝瑕佸垱寤哄拷鐣ュぇ灝忓啓鍜屾ā寮忕┖鐧藉尯鍩熺殑 Regex 瀹炰緥錛岀劧鍚庢绱笌璇ヨ〃杈懼紡鍖歸厤鐨勯泦鍚堬紝鍒欏簲浣跨敤濡備笅浠g爜錛?/p>
Regex re = new Regex(pattern, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace); MatchCollection mc = re.Matches(inputString);
鏈枃鐨勪笅杞芥枃浠朵腑鍖呮嫭榪欎簺紺轟緥鐨勫畬鏁翠嬌鐢ㄧ増鏈紝涓庣畝鍗?ASP.NET 欏典腑鐨勪竴鏍楓?/p>
Regulator (http://royo.is-a-geek.com/iserializable/regulator/) - 涓縐嶅湪瀹㈡埛绔繍琛岀殑姝e垯琛ㄨ揪寮忔祴璇曞伐鍏鳳紝閫氳繃 Web 鏈嶅姟涓?RegexLib 绱у瘑闆嗘垚錛屾彁渚涘“鍖歸厤”銆?#8220;鎷嗗垎”鍜?#8220;鏇挎崲”絳夌殑鏀寔銆傚寘鎷ц兘鍒嗘瀽鍜岃娉曠獊鍑烘樉紺哄姛鑳姐?/p>
RegexDesigner.NET (http://www.sellsbrothers.com/tools/) - 涓縐嶅姛鑳藉己澶х殑鍙宸ュ叿錛屽彲甯姪鏋勯犲茍嫻嬭瘯姝e垯琛ㄨ揪寮忋傚畠鍙敓鎴?C# 鍜?鎴?VB.NET 浠g爜鍜屽凡緙栬瘧姹囩紪浠g爜錛屽府鍔╂偍灝嗚〃杈懼紡闆嗘垚鍒板簲鐢ㄧ▼搴忎腑銆?/p>
Regular Expression Workbench (v2.0) (http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=C712F2DF-B026-4D58-8961-4EE2729D7322) - Eric Gunnerson 寮鍙戠殑宸ュ叿錛岀敤浜庡垱寤恒佹祴璇曞拰鐮旂┒姝e垯琛ㄨ揪寮忋傚叿鏈?#8220;Examine-o-matic”鍔熻兘錛屽厑璁稿皢榧犳爣鎮仠鍦ㄦ鍒欒〃杈懼紡鐨勪笂鏂癸紝瀵瑰叾鍚箟榪涜瑙g爜銆?/p>
姝e垯琛ㄨ揪寮忔湁涓や釜涓嶅緱涓嶈鐨勫姛鑳斤紝涓涓槸“鍛藉悕緇?#8221;錛屽彟涓涓槸“鍥涘悜澶勭悊”(lookaround processing)銆傜敱浜庤繖浜涘姛鑳藉緢灝戜嬌鐢紝姝ゅ鍙畝鍗曢槓榪頒竴涓嬨?/p>
浣跨敤鍛藉悕緇勶紝鎮ㄥ彲鍗曠嫭鍛藉悕鍖歸厤緇勶紝鐒跺悗鍦ㄨ〃杈懼紡涓嬌鐢ㄧ▼搴忚璦寮曠敤榪欎簺緇勩傚鏋滅粨鍚?Replace 鏂規硶閲嶆柊璁劇疆杈撳叆瀛楃涓茬殑鏍煎紡錛堥氳繃閲嶆柊鎺掑垪欏哄簭銆佹浛鎹㈣緭鍏ュ瓧絎︿覆涓殑鍏冪礌錛夛紝榪欎釜鍔熻兘鐗瑰埆鏈夋晥銆備緥濡傦紝鍋囪鏃ユ湡浣跨敤 MM/DD/YYYY 鏍煎紡鐨勫瓧絎︿覆錛岃屾偍甯屾湜鏃ユ湡鏍煎紡鏄?DD-MM-YYYY銆傛鏃訛紝鍙紪鍐欎竴涓〃杈懼紡鎹曡幏絎竴縐嶆牸寮忥紝閬嶅巻瀹冪殑鍖歸厤闆嗗悎錛屽茍鍒嗘瀽姣忎釜瀛楃涓詫紝鐒跺悗浣跨敤瀛楃涓叉搷浣滃緩绔嬫浛鎹㈠瓧絎︿覆銆傝繖闇瑕佸ぇ閲忕殑浠g爜鍜屽ぇ閲忕殑澶勭悊銆傚鏋滀嬌鐢ㄥ懡鍚嶇粍錛屾偍鍙畬鎴愬悓鏍風殑浠誨姟錛屽叿浣撹涓嬶細
String MDYToDMY(String input) { return Regex.Replace(intput, @"\b(?<month>\d{1,2})/(?<day>\d{1,2}/(?<year>\d{4})\b", "${day}- ${month}-${year}"); }
鎮ㄨ繕鍙互鎸夌紪鍙鋒垨鎸夊悕縐板紩鐢ㄧ粍銆傚湪浠諱綍鎯呭喌涓嬶紝榪欑寮曠敤閫氱О浣?#8220;鍙嶅悜寮曠敤”銆傚彟涓涓粡甯鎬嬌鐢ㄥ弽鍚戝紩鐢ㄧ殑鍦哄悎鍦ㄥ尮閰嶈〃杈懼紡鏈韓錛屽涓嬭繖涓〃杈懼紡鐢ㄤ簬鏌ユ壘閲嶅鐨勫瓧姣嶏細[a-z]\1銆傚畠灝嗗尮閰?#8220;aa”銆?#8220;bb”銆?#8220;cc”錛屼絾瀹冧笉鍚屼簬 [a-z]{2} 鎴?[a-z][a-z]錛屽悗涓よ呮槸絳夋晥鐨勶紝鍚庝袱鑰呭厑璁稿尮閰?#8220;ab”鎴?#8220;ac”鎴栦換浣曞叾浠栦袱涓瓧姣嶇殑緇勫悎銆傚弽鍚戝紩鐢ㄥ厑璁歌〃杈懼紡璁頒綇琛ㄨ揪寮忓凡緇忓垎鏋愬茍鍖歸厤榪囩殑杈撳叆瀛楃涓蹭腑鐨勯儴鍒嗗瓧絎︺?/p>
“鍥涘悜澶勭悊”鎸囧緢澶氭鍒欒〃杈懼紡寮曟搸鎵鏀寔鐨勬璐?Lookahead 鍜?Lookbehind 鍔熻兘銆傚茍涓嶆槸鎵鏈夌殑姝e垯琛ㄨ揪寮忓紩鎿庨兘鏀寔楠岃瘉鍥涘悜澶勭悊銆傝繖浜涙瀯閫犱笉浣跨敤瀛楃錛屽嵆浣垮畠浠彲浠ュ尮閰嶅瓧絎︺傛湁浜涙ā寮忓彲鑳藉湪涓嶄嬌鐢ㄥ洓鍚戝鐞嗙殑鎯呭喌涓嬫棤娉曟弿榪般傜壒鍒槸褰撴ā寮忎腑瀛樺湪鐨勪竴閮ㄥ垎渚濊禆浜庡彟涓閮ㄥ垎錛屽鏋滀笉浣跨敤鍥涘悜澶勭悊錛屽垯涓嶈兘鎻忚堪榪欐牱鐨勬ā寮忋備笅闈粙緇嶄簡姣忎釜鍥涘悜澶勭悊鐨勮娉曘?/p>
璇硶 |
璇存槑 |
---|---|
(?=...) |
姝?Lookahead |
(?!...) |
璐?Lookahead |
(?<=...) |
姝?Lookbehind |
(?<!...) |
璐?Lookbehind |
瀵嗙爜楠岃瘉鏄繀闇鍥涘悜澶勭悊鐨勪竴涓ず渚嬨傚亣瀹氬湪瀵嗙爜闄愬埗涓紝瀵嗙爜蹇呴』浠嬩簬 4 鍒?8 涓瓧絎︼紝涓斿繀欏昏嚦灝戝寘鍚竴涓暟瀛椼備負姝わ紝鎮ㄥ彲浠ヤ粎鍦ㄥ尮閰嶄腑嫻嬭瘯 \d錛岀劧鍚庝嬌鐢ㄥ瓧絎︿覆鎿嶄綔鏉ユ祴璇曢暱搴︺備絾瑕佸湪姝e垯琛ㄨ揪寮忎腑瀹炵幇榪欎竴鍒囷紝蹇呴』浣跨敤 Lookahead銆傜壒鍒槸姝?lookahead錛屽涓嬫墍紺猴細^(?=.*\d).{4,8}$
姝e垯琛ㄨ揪寮忔槸涓縐嶆弿榪版枃鏈ā寮忕殑鏋佹湁鏁堟柟娉曪紝瀹冧嬌鏂囨湰妯″紡鎴愪負瀛楃涓查獙璇佸拰鎿嶄綔鐨勬瀬濂借祫婧愩?NET Framework 閫氳繃 System.Text.RegularExpressions 鍛藉悕絀洪棿錛堢壒鍒槸鍏朵腑鐨?Regex 綾伙級鎻愪緵浜嗗姝e垯琛ㄨ揪寮忕殑寮哄ぇ鏀寔銆備嬌鐢?API 寰堢畝鍗曪紝浣嗙紪鍐欐紜殑姝e垯琛ㄨ揪寮忛氬父姣旇緝璐瑰姏銆備絾騫歌繍鐨勬槸錛屾鍒欒〃杈懼紡鍙互閲嶅浣跨敤錛屾偍鍙互閫氳繃緗戠粶涓殑鍚勭鑱旀満璧勬簮錛屼粠涓壘鍑哄叾浠栦漢璁捐鐨勮〃杈懼紡錛屾垨鑰呭湪鍒涘緩琛ㄨ揪寮忛亣鍒板洶闅炬椂寰楀埌甯姪銆?/p>
姝e垯琛ㄨ揪寮忓簱 http://www.regexlib.com/
姝e垯琛ㄨ揪寮忚璁哄垪琛?http://aspadvice.com/login.aspx?ReturnUrl=%2fSignUp%2flist.aspx%3fl%3d68%26c%3d16&l=68&c=16
姝e垯琛ㄨ揪寮忚鍧?http://forums.regexadvice.com/
姝e垯琛ㄨ揪寮?Web 鏃ュ織 http://blogs.regexadvice.com/
Mastering Regular Expressions (O'Reilly)錛屼綔鑰?Jeffrey Friedl http://www.regex.info/
.NET 姝e垯琛ㄨ揪寮忓弬鑰?http://msdn.microsoft.com/library/en-us/cpref/html/frlrfSystemTextRegularExpressions.asp
Jscript 姝e垯琛ㄨ揪寮忚娉?http://www.msdn.microsoft.com/library/en-us/script56/html/js56jsgrpRegExpSyntax.asp
姝e垯琛ㄨ揪寮忎俊鎭?http://www.regular-expressions.info/
Steven A. Smith 鏄?Microsoft 鍦?ASP.NET 鎶鏈柟闈㈢殑鏈鏈変環鍊間笓瀹?(MVP)錛屾槸 ASPAlliance.com 鍜?DevAdvice.com 鐨勬昏鍜屾墍鏈夎呫傛澶栵紝浠栦篃鏄?ASPSmith Ltd錛堜竴瀹墮噸鐐規彁渚?.NET 鍩硅鐨勫叕鍙革級鐨勬墍鏈夎呭拰棣栧腑鏁欏笀銆備粬鎾板啓浜嗕袱鏈憲浣滐細“ASP.NET Developer's Cookbook”鍜?#8220;ASP.NET By Example”錛屽茍鍦?MSDN 鍜?AspNetPRO 鏉傚織涓婂彂琛ㄤ簡涓浜涙枃绔犮係teve 姣忓勾閮藉湪鍚勭浼氳涓婂彂琛ㄦ紨璁詫紝鏄?INETA 鑱旂粶澶勭殑鎴愬憳銆係teve 鎷ユ湁浼佷笟綆$悊紜曞+瀛︿綅鍙婅綆楁満縐戝宸ョ▼鐞嗗澹浣嶃?/p>
鍦―ataFormatString 涓殑 {0} 琛ㄧず鏁版嵁鏈韓錛岃屽湪鍐掑彿鍚庨潰鐨勬牸寮忓瓧絎︿覆浠h〃鎵浠笇鏈涙暟鎹樉紺虹殑鏍煎紡錛?
鏁板瓧銆佽揣甯佹牸寮忥細
鍦ㄦ寚瀹氱殑鏍煎紡絎﹀彿鍚庡彲浠ユ寚瀹氬皬鏁版墍瑕佹樉紺虹殑浣嶆暟銆備緥濡傚師鏉ョ殑鏁版嵁涓恒?.56銆嶏紝鑻ユ牸寮忚瀹氫負 {0:N1}錛屽垯杈撳嚭涓恒?.5銆嶃傚叾甯哥敤鐨勬暟鍊兼牸寮忓涓嬭〃鎵紺猴細
鏍煎紡瀛楃涓?杈撳叆 緇撴灉
"{0:C}" 12345.6789 $12,345.68
"{0:C}" -12345.6789 ($12,345.68)
"{0:D}" 12345 12345
"{0:D8}" 12345 00012345
"{0:E}" 12345.6789 1234568E+004
"{0:E10}" 12345.6789 1.2345678900E+004
"{0:F}" 12345.6789 12345.68
"{0:F0}" 12345.6789 12346
"{0:G}" 12345.6789 12345.6789
"{0:G7}" 123456789 1.234568E8
"{0:N}" 12345.6789 12,345.68
"{0:N4}" 123456789 123,456,789.0000
"Total: {0:C}" 12345.6789 Total: $12345.68
甯哥敤鐨勬棩鏈熸椂闂存牸寮忥細
鏍煎紡 璇存槑 杈撳嚭鏍煎紡
d 綺劇畝鏃ユ湡鏍煎紡 MM/dd/yyyy
D 璇︾粏鏃ユ湡鏍煎紡 dddd, MMMM dd, yyyy
f 瀹屾暣鏍煎紡 (long date + short time) dddd, MMMM dd, yyyy HH:mm
F
瀹屾暣鏃ユ湡鏃墮棿鏍煎紡
(long date + long time)
dddd, MMMM dd, yyyy HH:mm:ss
g 涓鑸牸寮?(short date + short time) MM/dd/yyyy HH:mm
G 涓鑸牸寮?(short date + long time) MM/dd/yyyy HH:mm:ss
m,M 鏈堟棩鏍煎紡 MMMM dd
s 閫備腑鏃ユ湡鏃墮棿鏍煎紡 yyyy-MM-dd HH:mm:ss
t 綺劇畝鏃墮棿鏍煎紡 HH:mm
T 璇︾粏鏃墮棿鏍煎紡 HH:mm:ss