2015年8月31日 星期一

[SQL] 查詢資料庫實體檔案位置

--查詢資料庫實體檔案位置
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'資料庫名稱');


--ALTER DATABASE DB_NAME SET OFFLINE; 設離線

2015年8月27日 星期四

[Javascript] substr() & substring()

w3c substr()的解釋:
Extracts the characters from a string, beginning at a specified start position, and through the specified number of character.
簡單的講就是,指定開始位置與需要的長度抽取出子字串。index0開始。
語法:
"somestring".substr(start, length)
例子:
alert("12345".substr(2,3)); //會印出345
w3c substring()的解釋:
Extracts the characters from a string, between two specified indices.
substring()則是抽取出兩個index之間的子字串。index0開始。
語法:
"something".substring(from, to)

例子:
alert("12345".substring(2,3)); //會印出3

[Java Script] isNaN() 函數:判斷是否是非數值

定義和用法
isNaN() 函數用於檢查其參數是否是非數值。

語法:
isNaN(x)


參數: x

描述: 必需值。要檢測的值。

提示:isNaN() 函數通常用於檢測 parseFloat() 和 parseInt() 的結果,以判斷它們表示的是否是合法的數字。當然也可以用 isNaN() 函數來檢測算數錯誤,比如用 0 作除數的情況。

實例
isNaN();                   //返回 false
isNaN(0/0);                //返回 true 
isNaN(parseInt("3"));      //返回 false
isNaN(parseInt("hello"));  //返回 true 
isNaN("3");                //返回 false
isNaN("hello");            //返回 true 
isNaN(true);               //返回 false
isNaN(undefined);          //返回 true
如果 x 是特殊的非數位值 NaN(或者能被轉換為這樣的值),返回的值就是 true。
如果 x 是其他值,則返回 false。isNaN() 函數可用於判斷其參數是否是 NaN,該值表示一個非法的數字(比如被 0 除後得到的結果)。
如果把 NaN 與任何值(包括其自身)相比得到的結果均是 false,所以要判斷某個值是否是NaN,不能使用 == 或 === 運算符。
正因為如此,isNaN() 函數是必需的。

[Javascript] 正則替換去除字串中特定符號

用Javascript替換掉字串中的特殊符號

function clearString(s){ 
    var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()&;|{}【】‘;:”“'。,、?]"
    var rs = ""
    for (var i = 0; i < s.length; i++) { 
        rs = rs+s.substr(i, 1).replace(pattern, ''); 
    } 
    return rs;  


想要過濾的字串在 RegExp()中自己進行設定,中文和英文的特殊符號可以替換。

[Javascript] 正規表示式

規則及運算符號

「*」符合 0 項以上

「|」符合 0 或 1 項以上

「+」符合 1 項以上

「?」符合 0 到 1 項



「( )」組合及排定運算順序

「[ ]」可接受出現的字元定義符號

「{ }」設定長度

「/ /」宣告 PCRE 正規表達式

「^ $」起始與結尾字符

「.」萬用字元,代表任何文字

「\」特殊字元 ^.$()|*+?{\ 前面必須加上此轉移字元



正規表達式範例


{2,4}、{3}、{3,}
分別代表 2-4 個字元、3個字元、3個以上字元

[a-z]
代表小寫英文

[A-Z]
代表大寫英文

[^A-Z]
代表大寫英文字母以外

[A-Za-z0-9_]
代表接受大小寫英數及符號

[A-Za-z]
代表大小寫英文

[0-9]
代表數字

[^0-9]
代表數字以外

[0-9A-Za-z]
代表英文大小寫及數字

[^A-Za-z0-9]
代表英文大小寫及數字以外

PCRE 正規表達式


\d
代表數字,等於 [0-9]

\D
代表數字以外,等於 [^0-9]

\w
代表包含底線的英文大小寫及數字,等於 [A-Za-z0-9_]

\W
代表包含底線英文大小寫及數字以外,等於 [^A-Za-z0-9_]

\b
代表一個單詞邊界,也就是指單詞和空格間的位置。
例如, ya\b 等於 “nahoya” 中的 ya,但不等於 “nahoyabe” 中的 ya

\B
代表非單詞邊界。
例如,ya\B 等於 “nahoyabe” 中的 ya,但不等於 “nahoya” 中的 ya

\s
代表非字元的對象,如 空白 及 Tab,等於 [ \f\n\r\t\v]

\S
代表非字元的對象以外,等於 [^ \f\n\r\t\v]

\n
代表換行字元

\t
代表 TAB

\/
代表反斜線 /

PCRE 正規表達式修改器


/…/i
忽略大小寫


/…/e
當成指令處理