'use strict'
/**
* A regex for matching note strings.
*
* The note string should have the form `letter[accidentals][octave][/duration]`
* where:
*
* - letter: (Required) is a letter from A to G either upper or lower case
* - accidentals: (Optional) can be one or more `b` (flats), `#` (sharps) or `x` (double sharps).
* They can NOT be mixed.
* - octave: (Optional) a positive or negative integer
* - duration: (Optional) anything follows a slash `/` is considered to be the duration
* - element: (Optional) additionally anything after the duration is considered to
* be the element name (for example: 'C2 dorian')
*
* @name note.regex
* @example
* var R = require('note-regex')
* R.exec('c#4') // => ['c#4', 'c', '#', '4', '', '']
*/
module.exports = /^([a-gA-G])(#{1,}|b{1,}|x{1,}|)(-?\d*)(\/\d+|)\s*(.*)\s*$/
|