How select for reformatting text in square brackets

I am partially sighted and want to increase the size of the chords in a song book. The chords are all shown in square brackets as in the example below. I have researched the regular expressions information but nothing does the job properly. \[.*\] ought to work according to one tips page but it doesn’t, it selects the ] in the next set.

I have done the job using \[.\] to get all single character chords and then used additional dots to catch chords like [Gdim]. From my programming background, I would have expected \[*\] to work i.e. pick up any characters between the brackets, but that just selects the last bracket, There are other, more esoteric ways of trying to select the chords but it should be simple. The Word equivalent recommended is (\[)(*)(\]) and use \1\2\3 as the replace string but that doesn’t work for me with Word 2003.

Note that in the above examples all instances of square bracket are preceeded by backslashes but these are not displayed when the post is saved. I didn’t try changing to double backslashes to avoid any possible confusion.

Here are two examples if you want to play with this.

[F] How much is that doggie in the win-[C7]dow. 
The one with the waggly [F] tail. 
How much is that doggie in the win-[C7]dow, 
I do hope that doggie's for [F] sale. 


By the [C] light [Cmaj7][C7] of the Silvery [F] Moon [Am][D7-alt]
I want to [G] spoon. [G7]
To my honey I'll [C] croon [Gdim] love's [G7] tune.
Honey [C] moon, [Cmaj7][C7]

I have edited the post for clarity.

I would use a negative search pattern. The search pattern \[.*\] is essentially saying:

  1. find any opening bracket \[
  2. followed by any number of unqualified characters .*
  3. and then a closing bracket \]

Given regular expressions work on a line basis this will match this string in the second example:

[C] light [Cmaj7][C7] of the Silvery [F] Moon [Am][D7-alt]

… rather than the first string [C]. Instead of point 2 above, what is required is to search for “any number of characters that are NOT a closing bracket” i.e., [^\]]*. Thus the resultant expression is \[[^\]]*\].