How to split long string into group and cut off the excessive string.

5 ビュー (過去 30 日間)
Nazaruddin Azizan
Nazaruddin Azizan 2018 年 8 月 8 日
編集済み: Stephen23 2018 年 8 月 8 日
Let's say I have a string of length 1481. I want to split it into a group that contains 19 string in each group. However, there is an excessive string that is not enough to make it into a group and I want to cut it. How do I do that?
aaSeq = 'MQKSPLEKAGVLSKLFFSWTRPILRKGYRQRLELSDIYQIPSADSADNLSEKLEREWDRELASKKKPKLINALRRCFFWRFMFYGILLYLGEVTKAVQPLLLGRIIASYDPDNKVERSIAIYLGIGLCLLFVVRTLLLHPAIFGLHHIGMQMRIAMFSLIYKKTLKLSSRVLDKISIGQLISLLSNNLNKFDEGLALAHFVWISPLQVTLLMGLLWELLQASAFCGLAFLIVLALVQAGLGRMMMKYRDQRAGKINERLVITSEMIENIQSVKAYCWEEAMEKMIENLRQTELKLTRKAAYVRYFNSSAFFFSGFFVVFLSVLPYALTKGIILRKIFTTISFCIVLRMAVTRQFPWAVQTWYDSLGAINKIQDFLQKQEYKTLEYNLTTTEVVMDNVTAFWEEGFGELFEKAKQNNSDRKISNGDNNLFFSNFSLLGAPVLKDISFKIERGQLLAVAGSTGAGKTSLLMMIMGELEPSEGKIKHSGRISFCSQFSWIMPGTIKENIIFGVSYDEYRYKSVIKACQLEEDISKFTEKDNTVLGEGGITLSGGQRARISLARAVYKDADLYLLDSPFGYLDVLTEKEIFESCVCKLMANKTRILVTSKMEHLKKADKILILHEGSSYFYGTFSELQSLRPDFSSKLMGYDSFDQFSAERRNSILTETLRRFSLEGDASISWNDTRKQSFKQNGELGEKRKNSILNPVNSMRKFSIVPKTPLQMNGIEEDSDASIERRLSLVPDSEQGEAILPRSNMINTGPMLQGCRRQSVLNLMTHSVSQGPSIYRRTTTSARKMSLAPQTNLTEMDIYSRRLSQESGLEISEEINEEDLKECFIDDVDSIPTVTTWNTYLRYITVHRSLIFVLIWCIVIFLAEVAASLVVLWLFGNTAPQDKENSTKSGNSSYAVIITNTSSYYFFYIYVGVADTLLALGLFRGLPLVHTLITVSKILHHKMLHSVLQAPMSTLNTLKAGGILNRFSKDIAILDDLLPLTIFDFIQLLLIVVGAIAVVSVLQPYIFLATVPVIAAFILLRAYFLHTSQQLKQLESEGRSPIFTHLVTSLKGLWTLRAFGRQPYFETLFHKALNLHTANWFLYLSTLRWFQMRIEMIFVLFFIAVAFISILTTGEGEGRVGIILTLAMNIMSTLQWAVNSSIDVDSLMRSVSRVFKFIDMPTEETKSTKSIKPSSNCQLSKVMIIENQHVKKDDVWPSGGQMTVKGLTAKYIDSGNAILENISFSISPGQRVGLLGRTGSGKSTLLSAFLRLLNTEGEIQIDGVSWDSITLQQWRKAFGVIPQKVFIFSGTFRKNLDPYEQWSDQEIWKVADEVGLRSVIEQFPGKLDFVLVDGGYVLSHGHKQLMCLARSVLSKAKILLLDEPSAHLDPITYQIIRRTLKQAFADCTVILCEHRIEAMLECQRFLVIEENTVRQYESIQKLLSEKSLFRQAISSSDRAKLFPHRNSSKHKSRPQITALKEEAEEEVQGTRL';
seqLength = strlength(aaSeq)
mat = reshape(aaSeq,19,[]).'

採用された回答

KSSV
KSSV 2018 年 8 月 8 日
aaSeq = 'MQKSPLEKAGVLSKLFFSWTRPILRKGYRQRLELSDIYQIPSADSADNLSEKLEREWDRELASKKKPKLINALRRCFFWRFMFYGILLYLGEVTKAVQPLLLGRIIASYDPDNKVERSIAIYLGIGLCLLFVVRTLLLHPAIFGLHHIGMQMRIAMFSLIYKKTLKLSSRVLDKISIGQLISLLSNNLNKFDEGLALAHFVWISPLQVTLLMGLLWELLQASAFCGLAFLIVLALVQAGLGRMMMKYRDQRAGKINERLVITSEMIENIQSVKAYCWEEAMEKMIENLRQTELKLTRKAAYVRYFNSSAFFFSGFFVVFLSVLPYALTKGIILRKIFTTISFCIVLRMAVTRQFPWAVQTWYDSLGAINKIQDFLQKQEYKTLEYNLTTTEVVMDNVTAFWEEGFGELFEKAKQNNSDRKISNGDNNLFFSNFSLLGAPVLKDISFKIERGQLLAVAGSTGAGKTSLLMMIMGELEPSEGKIKHSGRISFCSQFSWIMPGTIKENIIFGVSYDEYRYKSVIKACQLEEDISKFTEKDNTVLGEGGITLSGGQRARISLARAVYKDADLYLLDSPFGYLDVLTEKEIFESCVCKLMANKTRILVTSKMEHLKKADKILILHEGSSYFYGTFSELQSLRPDFSSKLMGYDSFDQFSAERRNSILTETLRRFSLEGDASISWNDTRKQSFKQNGELGEKRKNSILNPVNSMRKFSIVPKTPLQMNGIEEDSDASIERRLSLVPDSEQGEAILPRSNMINTGPMLQGCRRQSVLNLMTHSVSQGPSIYRRTTTSARKMSLAPQTNLTEMDIYSRRLSQESGLEISEEINEEDLKECFIDDVDSIPTVTTWNTYLRYITVHRSLIFVLIWCIVIFLAEVAASLVVLWLFGNTAPQDKENSTKSGNSSYAVIITNTSSYYFFYIYVGVADTLLALGLFRGLPLVHTLITVSKILHHKMLHSVLQAPMSTLNTLKAGGILNRFSKDIAILDDLLPLTIFDFIQLLLIVVGAIAVVSVLQPYIFLATVPVIAAFILLRAYFLHTSQQLKQLESEGRSPIFTHLVTSLKGLWTLRAFGRQPYFETLFHKALNLHTANWFLYLSTLRWFQMRIEMIFVLFFIAVAFISILTTGEGEGRVGIILTLAMNIMSTLQWAVNSSIDVDSLMRSVSRVFKFIDMPTEETKSTKSIKPSSNCQLSKVMIIENQHVKKDDVWPSGGQMTVKGLTAKYIDSGNAILENISFSISPGQRVGLLGRTGSGKSTLLSAFLRLLNTEGEIQIDGVSWDSITLQQWRKAFGVIPQKVFIFSGTFRKNLDPYEQWSDQEIWKVADEVGLRSVIEQFPGKLDFVLVDGGYVLSHGHKQLMCLARSVLSKAKILLLDEPSAHLDPITYQIIRRTLKQAFADCTVILCEHRIEAMLECQRFLVIEENTVRQYESIQKLLSEKSLFRQAISSSDRAKLFPHRNSSKHKSRPQITALKEEAEEEVQGTRL';
seqLength = strlength(aaSeq) ;
nend = seqLength-mod(seqLength,19) ;
aaSeq = aaSeq(1:nend) ;
mat = reshape(aaSeq,19,[]).'

その他の回答 (1 件)

Stephen23
Stephen23 2018 年 8 月 8 日
編集済み: Stephen23 2018 年 8 月 8 日
Easy in one line:
>> aaSeq = 'MQKSPLEKAGVLSKLFFSWTRPILRKGYRQRLELSDIYQIPSADSADNLSEKLEREWDRELASKKKPKLINALRRCFFWRFMFYGILLYLGEVTKAVQPLLLGRIIASYDPDNKVERSIAIYLGIGLCLLFVVRTLLLHPAIFGLHHIGMQMRIAMFSLIYKKTLKLSSRVLDKISIGQLISLLSNNLNKFDEGLALAHFVWISPLQVTLLMGLLWELLQASAFCGLAFLIVLALVQAGLGRMMMKYRDQRAGKINERLVITSEMIENIQSVKAYCWEEAMEKMIENLRQTELKLTRKAAYVRYFNSSAFFFSGFFVVFLSVLPYALTKGIILRKIFTTISFCIVLRMAVTRQFPWAVQTWYDSLGAINKIQDFLQKQEYKTLEYNLTTTEVVMDNVTAFWEEGFGELFEKAKQNNSDRKISNGDNNLFFSNFSLLGAPVLKDISFKIERGQLLAVAGSTGAGKTSLLMMIMGELEPSEGKIKHSGRISFCSQFSWIMPGTIKENIIFGVSYDEYRYKSVIKACQLEEDISKFTEKDNTVLGEGGITLSGGQRARISLARAVYKDADLYLLDSPFGYLDVLTEKEIFESCVCKLMANKTRILVTSKMEHLKKADKILILHEGSSYFYGTFSELQSLRPDFSSKLMGYDSFDQFSAERRNSILTETLRRFSLEGDASISWNDTRKQSFKQNGELGEKRKNSILNPVNSMRKFSIVPKTPLQMNGIEEDSDASIERRLSLVPDSEQGEAILPRSNMINTGPMLQGCRRQSVLNLMTHSVSQGPSIYRRTTTSARKMSLAPQTNLTEMDIYSRRLSQESGLEISEEINEEDLKECFIDDVDSIPTVTTWNTYLRYITVHRSLIFVLIWCIVIFLAEVAASLVVLWLFGNTAPQDKENSTKSGNSSYAVIITNTSSYYFFYIYVGVADTLLALGLFRGLPLVHTLITVSKILHHKMLHSVLQAPMSTLNTLKAGGILNRFSKDIAILDDLLPLTIFDFIQLLLIVVGAIAVVSVLQPYIFLATVPVIAAFILLRAYFLHTSQQLKQLESEGRSPIFTHLVTSLKGLWTLRAFGRQPYFETLFHKALNLHTANWFLYLSTLRWFQMRIEMIFVLFFIAVAFISILTTGEGEGRVGIILTLAMNIMSTLQWAVNSSIDVDSLMRSVSRVFKFIDMPTEETKSTKSIKPSSNCQLSKVMIIENQHVKKDDVWPSGGQMTVKGLTAKYIDSGNAILENISFSISPGQRVGLLGRTGSGKSTLLSAFLRLLNTEGEIQIDGVSWDSITLQQWRKAFGVIPQKVFIFSGTFRKNLDPYEQWSDQEIWKVADEVGLRSVIEQFPGKLDFVLVDGGYVLSHGHKQLMCLARSVLSKAKILLLDEPSAHLDPITYQIIRRTLKQAFADCTVILCEHRIEAMLECQRFLVIEENTVRQYESIQKLLSEKSLFRQAISSSDRAKLFPHRNSSKHKSRPQITALKEEAEEEVQGTRL';
>> G = 19;
>> M = reshape(aaSeq(1:G*fix(numel(aaSeq)/G)),G,[]).'
M =
MQKSPLEKAGVLSKLFFSW
TRPILRKGYRQRLELSDIY
QIPSADSADNLSEKLEREW
DRELASKKKPKLINALRRC
FFWRFMFYGILLYLGEVTK
AVQPLLLGRIIASYDPDNK
VERSIAIYLGIGLCLLFVV
RTLLLHPAIFGLHHIGMQM
RIAMFSLIYKKTLKLSSRV
LDKISIGQLISLLSNNLNK
FDEGLALAHFVWISPLQVT
LLMGLLWELLQASAFCGLA
FLIVLALVQAGLGRMMMKY
RDQRAGKINERLVITSEMI
ENIQSVKAYCWEEAMEKMI
ENLRQTELKLTRKAAYVRY
FNSSAFFFSGFFVVFLSVL
PYALTKGIILRKIFTTISF
CIVLRMAVTRQFPWAVQTW
YDSLGAINKIQDFLQKQEY
KTLEYNLTTTEVVMDNVTA
FWEEGFGELFEKAKQNNSD
RKISNGDNNLFFSNFSLLG
APVLKDISFKIERGQLLAV
AGSTGAGKTSLLMMIMGEL
EPSEGKIKHSGRISFCSQF
SWIMPGTIKENIIFGVSYD
EYRYKSVIKACQLEEDISK
FTEKDNTVLGEGGITLSGG
QRARISLARAVYKDADLYL
LDSPFGYLDVLTEKEIFES
CVCKLMANKTRILVTSKME
HLKKADKILILHEGSSYFY
GTFSELQSLRPDFSSKLMG
YDSFDQFSAERRNSILTET
LRRFSLEGDASISWNDTRK
QSFKQNGELGEKRKNSILN
PVNSMRKFSIVPKTPLQMN
GIEEDSDASIERRLSLVPD
SEQGEAILPRSNMINTGPM
LQGCRRQSVLNLMTHSVSQ
GPSIYRRTTTSARKMSLAP
QTNLTEMDIYSRRLSQESG
LEISEEINEEDLKECFIDD
VDSIPTVTTWNTYLRYITV
HRSLIFVLIWCIVIFLAEV
AASLVVLWLFGNTAPQDKE
NSTKSGNSSYAVIITNTSS
YYFFYIYVGVADTLLALGL
FRGLPLVHTLITVSKILHH
KMLHSVLQAPMSTLNTLKA
GGILNRFSKDIAILDDLLP
LTIFDFIQLLLIVVGAIAV
VSVLQPYIFLATVPVIAAF
ILLRAYFLHTSQQLKQLES
EGRSPIFTHLVTSLKGLWT
LRAFGRQPYFETLFHKALN
LHTANWFLYLSTLRWFQMR
IEMIFVLFFIAVAFISILT
TGEGEGRVGIILTLAMNIM
STLQWAVNSSIDVDSLMRS
VSRVFKFIDMPTEETKSTK
SIKPSSNCQLSKVMIIENQ
HVKKDDVWPSGGQMTVKGL
TAKYIDSGNAILENISFSI
SPGQRVGLLGRTGSGKSTL
LSAFLRLLNTEGEIQIDGV
SWDSITLQQWRKAFGVIPQ
KVFIFSGTFRKNLDPYEQW
SDQEIWKVADEVGLRSVIE
QFPGKLDFVLVDGGYVLSH
GHKQLMCLARSVLSKAKIL
LLDEPSAHLDPITYQIIRR
TLKQAFADCTVILCEHRIE
AMLECQRFLVIEENTVRQY
ESIQKLLSEKSLFRQAISS
SDRAKLFPHRNSSKHKSRP

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

製品


リリース

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by