Split digits into 2 matrices
Show older comments
I am trying to solve a card problem.
I get two hands as an imput (Let's say 5H 5C 6S 7S 10D and 2C 3S 6S 7S 10D)
For this I want to split suit and number and put them in 2 different matrices. (I ofcourse number the suits first).
I have found ways to split the digits of a number, but not to put them in 2 different matrices.
Answers (1)
Walter Roberson
on 2 Jun 2021
Edited: Walter Roberson
on 2 Jun 2021
Different approaches:
cards = {'5H' '5C' '6S' '7S' '10D' 'QC' '3S' 'KS' '7S' '10D'}
ranks1 = cellfun(@(c) c(1:end-1), cards, 'uniform', 0)
suits1 = cellfun(@(c) c(end), cards, 'uniform', 0)
ranks2 = regexprep(cards, '.$', '', 'once')
suits2 = regexp(cards, '.$', 'match', 'once')
ranks3 = extractBefore(cards, lettersPattern(1) + lineBoundary)
suits3 = extract(cards, lettersPattern(1) + lineBoundary)
ranks4 = extract(cards, asManyOfPattern(characterListPattern("A1234567890JQK"),1))
suits4 = extract(cards, characterListPattern("CDHS"))
ranks5 = regexp(cards, '[0-9AJQK]+', 'match', 'once')
suits5 = regexp(cards, '[CDHS]', 'match', 'once')
Categories
Find more on Timing and presenting 2D and 3D stimuli in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!