4

入力文字列:

[Wsg-Fs]-A-A-A-Cgbs-Sg7-[Wwg+s-Fs]-A-A-Afk-Cgbs-Sg7

望ましい出力は文字列配列です。

[Wsg-Fs] A A A Cgbs Sg7 [Wwg+s-Fs] A A Afk Cgbs Sg7

入力文字列を-区切り文字として分割すると、角括弧内の文字列も分割されます。

-角括弧内を無視するように文字列を分割するにはどうすればよいですか?

引用符で囲まれた区切り文字を無視しようとする同様の投稿を見つけることができましたが、それらの解決策を私の問題に適用できませんでした。

どんな提案も本当に役に立ちます。ありがとう!

4

2 に答える 2

9

ネストされた角かっこがないと仮定すると、次を使用して-、角かっこの外側にある文字のみを一致させることができます。

-(?![^\[]*\])

例: http://regex101.com/r/sX5hZ2

-これは否定先読みを使用し、左角括弧の前に右角括弧がある場合、照合しようとした は角括弧内にあるというロジックを使用します。

于 2012-08-30T20:10:42.677 に答える