0

次のような文字列があります-

 roger::)

と のように 2 つの文字列に分割する必要がrogerあり:)ます。私は以下を使用しています

"roger::)".split(":")

しかし、これは 3 つの配列要素、つまり を形成しますroger[empty])必要なのは と の 2 つの配列要素rogerです:)

ここにリンクの説明を入力

次のリンクを使用してみましたが、コンソールundefined"roger::)".split(/_(.+)?/)[1]

助けてください。

4

2 に答える 2

1

先読みを使用します。:が続く場合に分割され:ます。

"roger::)".split(/:(?=:)/);

しかし、おそらくこれはあなたが代わりに望むものです。それが幸せそうな顔になることが:続く場合を除いて、分割してください.)

"roger::):another:test".split(/:(?!\))/);
于 2013-11-08T14:19:45.740 に答える
0

あなたのテストケースは制限されているように見えます.おそらくmatchを使用するだけです:

'roger::)'.match(/[^:]+|:\)/g); // ['roger', ':)']

多分それは合っているかどうか:

'roger::):another:test'.match(/[^:]+|:\)/g); // ["roger", ":)", "another", "test"]
于 2013-11-08T14:43:19.930 に答える