我需要從下面給出的文本中提取粗體(Password10)的密碼值。我正在使用C#編程語言。如何使用C提取字符串#
FName Lname,您的系統密碼已更改。如果您沒有更改或不知道爲什麼它被改變,你應該與管理員聯繫immediately.Your新密碼Password10
如果您有任何疑問,請聯繫:
解決方案計劃辦公室 電話: 電子郵件:[email protected]
感謝您使用XXXXX
我需要從下面給出的文本中提取粗體(Password10)的密碼值。我正在使用C#編程語言。如何使用C提取字符串#
FName Lname,您的系統密碼已更改。如果您沒有更改或不知道爲什麼它被改變,你應該與管理員聯繫immediately.Your新密碼Password10
如果您有任何疑問,請聯繫:
解決方案計劃辦公室 電話: 電子郵件:[email protected]
感謝您使用XXXXX
好吧,如果你肯定知道,這將是在WHI形式將顯示文本。總是。然後,您可以簡單地執行如下操作:
string text = //load your text here;
int startingIndex = text.IndexOf("Your new password is ") + "Your new password is ".Length;
string newText = text.SubString(startingIndex, text.length); //this will load all your text after the password.
//then load the first word
string password = newText.Split(' ')[0];
密碼爲**粗體**,後面跟着魔術字符序列 –
它後面跟着一個空格:) – dutzu
您也可以考慮使用RegEx(正則表達式)。
你可以使用string.Substring
:
int indexOfPasswordText = text.IndexOf("Your new password is ");
if (indexOfPasswordText != -1)
{
int passwordStart = indexOfPasswordText + "Your new password is ".Length;
int indexeOfNextWord = text.IndexOfAny(new[] { '\n', '\r', ' ' }, passwordStart);
if (indexeOfNextWord == -1) indexeOfNextWord = text.Length;
string passWord = text.Substring(passwordStart, indexeOfNextWord - passwordStart);
Console.Write(passWord);
}
我沒有測試這一點,但也許它可以把你在正確的方向。
string input = [YOUR MAIL];
string regex = @"Your new password is (\w+)";
Match m = Regex.Match(input, regex);
if (m.Success) {
string password= m.Groups[1].Value;
//do something
}
謝謝它適合我 – TestingSpices
有人粘貼此鏈接前些天我認爲這是容易爲這種特殊的情況:http://www.whathaveyoutried.com – Charleh
閱讀整個事情作爲一個字符串,切斷部分,其中「如果你有..「開始到最後。從「密碼是」結尾的子字符串(應始終是相同的起始索引)到新字符串的末尾。 – turbo
是文字串嗎? 'string j = mystring.Remove(0,mystring.LastIndexOf(「」));' 編輯,在代碼大綱之前發佈此代碼,刪除仍然會以此方式工作 – Sayse