On 4 October 2010 11:26, Richard Quadling <rquadling@xxxxxxxxx> wrote: > On 1 October 2010 16:20, Don Wieland <donw@xxxxxxxxxxxxx> wrote: >> The logic I need is pretty straight forward, but I am having a hard time >> replicating it using PHP functions. I will try to break it down to it's >> simplest form: >> >> I have a field that has several lines of text. Chords and Song Lyrics. >> >> The "Chord" lines begin with an asterisk "*" and end with the line break. >> This is the string I want to parse. Lines with no asterisk at the beginning >> are ignored. >> >> Based on 3 arrays of NOTES, I want SUBSTITUTE the text (based on exact text >> character patterns - just NOTES not the chord type) of the lines in my field >> that start with an asterisk "*". >> >> original_chord_array = A, A#, B, C, C#, D, D#, E, F, F#, G, G# >> transpose_up_array = A#, B, C, C#, D, D#, E, F, F#, G, G#, A >> transpose_down_array = G#, A, A#, B, C, C#, D, D#, E, F, F#, G >> >> It is important that it only effects EXACT strings. ÂNotes will always be >> capitalized and chord types will be lower case. Maybe we can use that >> characteristic to better identify what to change. Here are some examples of >> chords: >> >> A >> Asus7 >> Csus add9 >> Dmaj7 >> F#m7 >> G# >> C#dim no3 >> >> When I transpose UP these chords, just the NOTE should change: >> >> A# >> A#sus7 >> C#sus add9 >> D#maj7 >> Gm7 >> A >> Ddim no3 >> >> When I transpose DOWN these chords, just the NOTE should change: >> >> G# >> G#sus7 >> Bsus add9 >> C#maj7 >> Fm7 >> G >> Cdim no3 >> >> I am working on a function, but still not producing the proper results. >> Hopefully this break down is more clear and someone will bail me out ;-) >> >> Thanks again for the feedback. >> >> Don >> >> On Oct 1, 2010, at 7:02 AM, Richard Quadling wrote: >> >>> Changing the NormalKeyID and using that ID with NoteSequenceNumber >>> should give you the new note to play. >>> >>> I think. http://pastebin.com/rsV35czb Code with tests and output. -- Richard Quadling Twitter : EE : Zend @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php