我需要從文件中提取公鑰塊。該文件看起來像這樣:C#提取文本文件塊
.. some more data here ..
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.17 (MingW32)
Stmjb2vAyoFAt5EbfNLEPCrwIDt7gB6cS2kldF7nechuNoyEzevJQMfQ8uJChR9g
h/eUqqzE/cqCLHEruLMR38NCVYTEuCvTjOCtAnU9BCyX1Ir11aDUe0A4drcNISrv
pEYjbNh4pb5sZbxKfMrx7PPUOsLH/vpMZFy/ABEBAAG0JEVsa2FydF90ZXN0XzIw
MTEgPHN1cHBvcnRAZWxrYXJ0LnBsPokBOAQTAQIAIgUCTjaYUQIbAwYLCQgHAwIG
...
-----END PGP PUBLIC KEY BLOCK-----
.. some more data here ..
之前和其他關鍵塊有更多的信息。 繼承人是我的嘗試:
static bool GetPublicKey(Stream keyI)
{
StreamReader reader = new StreamReader(keyI);
string key = reader.ReadToEnd();
Regex r = new Regex("(-----BEGIN PGP PUBLIC KEY BLOCK-----\\r\\n(.*?)-----END PGP PUBLIC KEY BLOCK-----\\r\\n)");
Match m = r.Match(key);
if (m.Success)
return true;
}
但我不能得到它的工作..
我怎麼能做到這一點與使用正則表達式?
你的答案是一個問題嗎? – Bazzz
蘇格拉底法。如果你喜歡,可以用'。*'替換'(。*?)'。 – Oliver
對於「蘇格拉底方法」+1 +1 –