之間找到子,我想捕捉初始目錄的價值在此字符串:正則表達式來兩個字符串
「等等等等初始目錄= MyCat'」
我想的結果成爲:MyCat
在等號前後可能有或沒有空格,並且在單引號之前可能有或沒有空格。
嘗試這樣做各種別人,而是沒有去:
/Initial Catalog\s?=\s?.*\s?\'/
使用.NET。
之間找到子,我想捕捉初始目錄的價值在此字符串:正則表達式來兩個字符串
「等等等等初始目錄= MyCat'」
我想的結果成爲:MyCat
在等號前後可能有或沒有空格,並且在單引號之前可能有或沒有空格。
嘗試這樣做各種別人,而是沒有去:
/Initial Catalog\s?=\s?.*\s?\'/
使用.NET。
這是一個很好的正則表達式
= *(.*?) *'
使用的想法,並根據需要添加\ s或更高文字文本。
在C#1組將包含比賽
string resultString = null;
try {
Regex regexObj = new Regex("= *(.*?) *'");
resultString = regexObj.Match(subjectString).Groups[1].Value;
} catch (ArgumentException ex) {
// Syntax error in the regular expression
}
你需要把周圍的字符串的一部分,你想匹配的括號:
/Initial Catalog\s*=\s*(.*?)\s*'/
你也想排除儘可能多的空間前'
,所以你需要\s*
而不是\s?
。 .*?
意味着字符串的提取部分不會佔用這些空格,因爲它現在是懶惰的。
Regex rgx = new Regex(@"=\s*([A-z]+)\s*'");
String result = rgx.Match(text).Groups[1].Value;
你會得到什麼結果? – gereeter
空白或不匹配。 –