Time of Update: 2018-12-08
javaRegex提供了比較豐富的類庫,大大簡化了這個過程。下面列出常用的基本文法: * + ? ^ $ [] () | / \ \d \D \w \W {} {n} {n,m}等, 要注意的是“|”或符號。它可以匹配單個字元和字串。如:t[aeio]n只匹配tan,ten,tin,ton。但不匹配toon,因為在方括弧內只能匹配單個字元,要匹配toon,使用t(a|e|i|o|oo)n就可以實現toon。 Regex就是個熟練的過程,沒有什麼太過於抽象的地方。其實學軟體(不喜歡“編程”兩個字)
Time of Update: 2018-12-08
我是常常使用editplus ,主要是它啟動快,檔案小,自訂代碼,綠色。發現當用他開啟php有一個快速鍵ctrl+F11可以開啟函數列表,也就是檔案內所有的函數名會顯示在列表中,雙擊會選中函數,非常方便但是預設安裝好editplus 3 不支援物件導向的方法 如 final、static 的顯示 ,於是我看了下函數模板的設定,也是用Regex的配置,輕鬆改好正則OKl了,正則如:複製代碼 代碼如下:^[ \t]*(public |private |protected )?function[
Time of Update: 2018-12-08
際網域名稱格式如下: 網域名稱由各國文字的特定字元集、英文字母、數字及“-”(即連字號或減號)任意組合而成, 但開頭及結尾均不能含有“-”,“-”不能連續出現 。 網域名稱中字母不分大小寫。網域名稱最長可達60個位元組(包括尾碼.com、.net、.org等)。 /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i; /內容/i 構成一個不區分大小寫Regex; ^
Time of Update: 2018-12-08
如果要尋找檔案名稱中有*的檔案,則需要對*進行轉義,即在其前加一個\。ls \*.txt。Regex有以下特殊字元。需要轉義 特別字元說明$匹配輸入字串的結尾位置。如果設定了 RegExp 對象的 Multiline 屬性,則 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字元本身,請使用 \$。( )標記一個子運算式的開始和結束位置。子運算式可以擷取供以後使用。要匹配這些字元,請使用 \( 和 \)。*匹配前面的子運算式零次或多次。要匹配 * 字元,請使用
Time of Update: 2018-12-08
譬如 限制只允許正則出現以下的 a-Z 0-9 http:// 匹配連貫 https:// 匹配連貫 / 不可連續兩個出現 & % ? 不可連續兩個出現 = 等號 - 中劃線 _ 底線 . 點 很重要 有如下正則符合 ^((?:http|https)://)?((?![/?]{2,})[a-zA-Z0-9\-._%&=/?])+$ RegexBuddy3 翻譯工具 ^((?:http|https)://)?((?![/?]{2,})[a-zA-Z0-9\-._%&=/?]
Time of Update: 2018-12-08
之前我們給大家介紹了Regex中的定界符、原子和元字元,那麼我們關於Regex教程的基本文法就剩下了Regex中的模式修正符。本節會向大家介紹模式修正符的概念、模式修正符的構成,以及結合執行個體的模式修正符的示範,大家在學習完本節內容之後,就完全可以讀懂Regex了。 什麼是模式修正符? 1, 模式修正符就是幾個字母,我們在每個Regex中可以一次使用一個,也可以連續使用多個,每一個具一定的意義。 2, 模式修正符是對整個Regex調優使用,也可以說是對Regex功能的擴充。
Time of Update: 2018-12-08
原文:http://blog.stevenlevithan.com/archives/algebra-with-regexes我照著原文寫出的正則還真的計算出了結果。上php例子:複製代碼 代碼如下:<?php/** * 計算 Ax+By=C */function suan($A, $B, $C) { $A--; $B--; $str = str_repeat('-', $C); $search = '/^(.*)\1{' . $A . '}(.*)\2{' . $B . '}$/';
Time of Update: 2018-12-08
如: 字串<div style="float:left" id="ab">123213</div><div class="a123">21314423</div> 不匹配<div class="a123">……</div>的內容 寫這個例子可以用 <[a-zA-Z0-9][^>]+?id=[^>]+?>.*?</div> 匹配 上一個php例子: 複製代碼 代碼如下:<?php
Time of Update: 2018-12-08
我使用DW 這個所見所得的編輯器來寫html時,喜歡寫上注釋,如<!-- header --> 等等的注釋,在一次比較大的改動時,需要批量尋找替換,為了大量操作,於是我寫了一個Regex來進行處理。 尋找: 複製代碼 代碼如下:(\r\n|\n|.)*?<\!-- header --> 效果 還有一個常用的就是字串之間的字元 如:尋找<!-- header start --> 到<!-- header end -->之間的字元,包括換行。 尋找:
Time of Update: 2018-12-08
對於有重複的5到10位元字可以使用\d{5,10} 這樣的正則 無重複的5到10位元字我考慮了一下還不會,最然只好查網上。 有一個版本還不錯,反正RegexBuddy測試通過了。 複製代碼 代碼如下:^(?!\d*?(\d)\d*?\1)\d{5,10}$ 對於(?!………(……)………\1)這樣的形式我還沒有研究透,有時間我真要細細研究。 上一個php的例子: 複製代碼 代碼如下:<?php $str = '123456789'; $search = '/^(?!\d*?(\d)\d*?
Time of Update: 2018-12-08
第一個Applet小應用程式: 1.java檔案代碼 複製代碼 代碼如下:import java.awt.*; import java.applet.Applet; public class HelloWorld extends Applet{ String text; puvlic void init(){ text = "Hello World"; //this指的是所在類(Hello
Time of Update: 2018-12-08
503是一種HTTP狀態代碼,是伺服器出錯的一種返回狀態,由於臨時的伺服器維護或者過載,伺服器當前無法處理請求。這個狀況是臨時的,並且將在一段時間以後恢複。那麼我們遇到503服務暫時不可用應該怎麼辦呢?如果你是網站管理員
Time of Update: 2018-12-08
代碼如下: 複製代碼 代碼如下:/** *Author:烏鳥heart *Version:1.0 */ Dim IntX As Double '全域變數,用於儲存計算的數值 Dim IntOperation As Double '標記運算類型 Dim isBegin As Boolean '標記是否已經給IntX賦值 Public Sub Clear() '清空命令函數 screen.Caption = "" End Sub Public Sub SavaToIntX() Select
Time of Update: 2018-12-08
研究,就先從入口開始。天涯所使用的ip地址221.11.172.154 海南網通124.225.65.154 湖南電信218.77.130.151 海南電信這些ip估計是天涯用來分流頻寬所使用,在我測試的這個時間,218.77.130.151這個ip有可能正在遷移到124.225.65.154。接下來是四台一組的squid主機(squid/2.6.STABLE4)每組負責幾個板塊,統計了一下至少有3組,也就是12台
Time of Update: 2018-12-08
一般來說,負載平衡就是將用戶端的請求分流給後端的各個真實伺服器,達到負載平衡的目的。還有一種方式是用兩台伺服器,一台作為主伺服器(Master),另一台作為熱備份(Hot Standby),請求全部分給主伺服器,在主伺服器當機時,立即切換到備份伺服器,以提高系統的整體可 第一次看到這個標題時我也很驚訝,Apache居然還能做負載平衡?真是太強大了。經過一番調查後發現的確可以,而且功能一點都不差。這都歸功於 mod_proxy 這個模組。不愧是強大的Apache啊。
Time of Update: 2018-12-08
本文介紹三款簡單的返回頁面頂部代碼,可以使用簡單的HTML(http://www.jb51.net/web/62651.html) 錨標記,也可使用Javascript Scroll (http://www.jb51.net/article/31422.htm) 函數動態返回,其它的還有懸浮指令碼等有點複雜了,本文不再介紹,大家根據自己需要選擇其中的一種即可,總之簡約最美的,能減少代碼就減少代碼,能不調用的就別調用,要不是天緣部落格的文章都是牛長也不會添加這個功能。 一、使用錨標記返回頁面頂部
Time of Update: 2018-12-08
其實也是很簡單的方法,修改nginx.conf檔案,加入以下內容:複製代碼 代碼如下:location / {if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}if (!-f $request_filename){rewrite (.*)
Time of Update: 2018-12-08
問題: 在幾個blog程式中折騰的結果~ 導致url連續二次變化。這是第三次了。 nginx 通過rewrite 使用 “permanent;”參數 成301永久url重新導向。 以往的url結構 http://www.jb51.net/post/199/ 現在需要的url結構 http://www.jb51.net/archives/199.html 過程: 學習nginx的配置規則,學習Regex(我也沒接觸過,學唄。)
Time of Update: 2018-12-08
最開始的時候,我是用最直接的重啟方式 killall -9 nginx;/data/nginx/sbin/nginx 如果機器比較慢,kill進程時一瞬間殺不完,再執行一次即可。這種重啟方式不是特別安全,如果配置有誤,則會重啟失敗,需要重新修改設定檔然後再啟 動,期間會消耗一點時間。不過對於目前普遍還是不怎麼嚴格的http界而言,這點時間還不至於產生太大損失,只要不是在關鍵時刻搞出來就好。如果希望沿用 這種重啟辦法,我提議還是先好好測試吧。 後來我在nginx.net上看到了一種更奇妙的重啟
Time of Update: 2018-12-08
本文開始 我們是由於效率和易用性的考慮才產生架構。架構能節省開發時間。架構強制使用公用的約定,因此它能有效地解決一些共有的問題,比如頁面渲染,assert判斷,安全或者應用配置等。這些共有的問題有個共通的特性是會在每個web應用上都用到。 架構是非常好的,它能讓決定更連貫。架構能避免我們寫一大堆自訂模組來實現這些效能,我們所需要做的就是將這些共用模組放在架構中實現。架構節省了我們不少的時間和精力,並且讓擴充變得更容易。但是這也是問題的根本所在。