2017-02-22 3 views
3

文字列があります:どのようにRegExpを使用してJavaScriptで文字列を分割するには?

var str = "a1c a12c a23c ac 1234 abc"; 

と正規表現:

var re = /a(\d*)c/g; 

私はにしたいが、acの間、私が望む結果であることをstrを分割

['a','c a','c a','c a','c 1234 abc'] 

どうやってするの?

+0

結果は[ 'A'、 'C​​ A'、C 'A'、 'C​​ AC 1234 ABC']すべきではありませんか? – marvel308

+0

@ marvel308申し訳ありません!なぜ結果は '['a'、 'c a'、 'c a'、 'c ac 1234 abc']'になるべきですか?結果は '['a'、 'c a'、 'c a'、 'c a'、 'c 1234 abc']'です。私は 'ac 'も分割したい。 – Guo

答えて

3

数字をの特殊文字(この場合は'-')に置き換え、その文字で分割する方法もあります。あなたが先に正の外観を使用することができ

str.replace(/a(\d*)c/g, 'a-c').split('-'); 

var str = "a1c a12c a23c ac 1234 abc"; 
 
var re = /a(\d*)c/g; 
 

 
console.log(str.replace(re, 'a-c').split('-'));

0

var str = "a1c a12c a23c ac 1234 abc"; 
 

 
console.log(str.split(/\d*(?=\d*c.*a)/));

+0

ありがとう!しかし 'str =" b1c a12c a23c ac 1234 abc "'の場合、結果は間違っています。 – Guo

+0

@Guo、希望の結果も追加してください。 –

+0

私は結果が '['b1c a'、 'c a'、 'c a'、 'c 1234 abc']'であることを望んでいました。実際、reslutは '['b'、 'c a'、 'c a' 、 'c a'、 'c 1234 abc'] ' – Guo

関連する問題