طريقة التعاقد لاستخراج أجزاء من السلاسل (رأس FASTA)

StackOverflow https://stackoverflow.com/questions/625105

  •  05-07-2019
  •  | 
  •  

سؤال

وبالنظر إلى السلسلة التالية:

string Header =">day11:1:356617";

وكيف استخراج كل شيء ما عدا ">"، العائد فقط:

day11:1:356617

ويمكن أن أفعله حلقة القياسية على الطابع سلسلة والحفاظ على البعض فقط من ">".

string nStr ="";
for (int i=0; i < Header.size(); i++) {
    if (Header[i] != ">") {
       nStr = nStr + Header[i];
     }
}

ولكن يبدو أن النهج أخرق للغاية وبطيء، ولا سيما يجب أن أفعل مثل استخراج بالنسبة للملايين من الخطوط.

هل كانت مفيدة؟

المحلول

if (Header[0] == '>') Header = Header.substr(1);

نصائح أخرى

... أنت لم تقل على أي شيء حول "الملك" من السلاسل الداخل أو ما كنت تبحث لاقضم بصوت عالي. لو كان الجمل فقط من النموذج الذي أعطيته، وهذا سيكون أسرع:

Header.substring(1);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top