0

たとえば、次の形式のパスがあります。

f1/f2/f3/aaa

次のようなものを返すために、一致するグループが必要です。

["f1", "f2", "f3", "aaa"]
4

1 に答える 1

7

これには正規表現を使用しないでください。

var str = "f1/f2/f3/aaa",
    arr = str.split('/');
console.log(arr);

JS フィドルのデモ

これにより、最後に実際の配列が得られますが、正規表現を使用すると、せいぜい配列のような文字列になります。これはやや無意味に思えます。

正規表現アプローチを使用する必要がある場合:

var str = "f1/f2/f3/aaa",
    arr = str.match(/(\w+)/g);
console.log(arr)​​​

JS フィドルのデモ

そして、それがどれほど理解しにくいかを見てください。また、それがどれほど壊れやすいか(そのアプローチでは、セパレーターを非英数字(または_)文字にする必要があるため)。この場合、正規表現を使用する正当な理由はありません。

于 2012-11-02T19:04:19.973 に答える