1.需求
獲取form窗體中表控制項及其屬性。
2.需求分析
接到這個需求,首先考慮使用「反射」實現。但這裡主程式(解析程式)為外部程式,被解析物件為專案**,嘗試採用過「動態載入類檔案」+「反射」的形式實現,
但遇到了更加棘手的問題,以致功能交期愈加遙遙無期。遂採用「正則表達解析**」,簡單粗暴,以下為關鍵的正規表示式與大家分享解決思路。
3.解決方案
3.1.獲取窗體名
(?<=this.name = )\s*(?=;)
3.2.匹配dbgrid名字
(?<=private wbf\.controls\.dbgrid\s+)\w*
「private wbf.controls.dbgrid」開頭,空格若干,最近的乙個單詞字元
3.3.匹配dbgrid所有屬性
(this\.dbgrid1\.\w+[^;]*)(?=\;)
滿足「this.dbgrid1.」開頭,緊接至少乙個單詞,其後除「;」任意字元若干,並且末尾是分號 的範圍字元
3.4.取gridcolumn名
(?<=private devexpress\.xtragrid\.columns\.gridcolumn\s+)\w*
3.5.獲取gridcolumn屬性值
(this\.\.\w+[^;]*)
附件正規表示式封裝類
public class regexhelper
return l_liststring;
}///
/// 匹配返回dictionary
///
/// 正規表示式
/// 匹配文字
///
public dictionaryregexfordictionary(string a_strpattern,string a_txtcontext)
}return l_dicresult;
}///
/// 匹配返回bool
///
/// 正規表示式
/// 匹配文字
///
public bool regexforbool(string a_strpattern,string a_txtcontext)
///
/// 匹配返回string
///
/// 正規表示式
/// 匹配文字
///
public string regexforstring(string a_strpattern,string a_txtcontext)
return "";}}
標籤屬性 物件屬性
doctype html en utf 8 viewport content width device width,initial scale 1.0 document title head div1 title qqqqq 123123 div checkbox name id ck 標籤屬性 物...
C 物件導向 屬性
一 屬性 property 作為類和結構的成員,是對字段的一種封裝方式,實際上是一種特殊的方法,被稱為訪問器 accessor 從而隱藏實現和驗證 有助於提高字段讀取和賦值的安全性和靈活性 1.屬性訪問器包含兩種型別 用於讀取並返回值的get訪問器,用於賦值新值的set屬性訪問器 通常將字段宣告為私...
C 物件導向 屬性
一 屬性 property 作為類和結構的成員,是對字段的一種封裝方式,實際上是一種特殊的方法,被稱為訪問器 accessor 從而隱藏實現和驗證 有助於提高字段讀取和賦值的安全性和靈活性 1.屬性訪問器包含兩種型別 用於讀取並返回值的get訪問器,用於賦值新值的set屬性訪問器 通常將字段宣告為私...