2012-03-25 25 views
1

このパターンを文字列に複数回マッチさせるにはどうすればよいですか?正規表現for this = this in string =

1 = AA 2 = 'BB' 3 = "CC" 4 = "DD"

正規表現は、すべてのこれらと一致し、
1と4本のマッチを与えるべきである)1 = AA
2)2 = 'BB'
3)3 = "CC"
4)4 = "DD"

これは#4以外のすべてを一致して、(?<number>\d=)\s*("|')?\s*(?<value>.*?)(?=\d=)

を私が試したし、これまでのところ、私はこれを持っています。最後のものは\d=ではないからです。私はそれをオプションにすることができますか?最後には何も正しく一致しません。何が間違っているのですか?

答えて

2

(?=\d=)の部分は、「\d=が続く」を意味します。必要なのは(?=\d=|$)です。これは、「\d=または文字列の末尾」を意味します。

(?<number>\d=)\s*("|')?\s*(?<value>.*?)(?=\d=|$)