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

5 views (last 30 days)
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,[]).'

Accepted Answer

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

More Answers (1)

Stephen23
Stephen23 on 8 Aug 2018
Edited: Stephen23 on 8 Aug 2018
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

Categories

Find more on Characters and Strings in Help Center and File Exchange

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!