Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- input : 'foo bar "lorem ipsum" baz'
- output: ['foo', 'bar', 'lorem ipsum', 'baz']
- var str = 'foo bar "lorem ipsum" baz';
- var results = str.match(/("[^"]+"|[^"s]+)/g);
- var input = 'foo bar "lorem ipsum" baz';
- output = input.match(/("[^"]+"|[^"s]+)/g);
- output = input.match(/"[^"]*"|w+/g);
- output = input.match(/("[^"]*")|([^s"]+)/g)
- output = /(".+?"|w+)/g.exec(input);
- output = /"(.+?)"|(w+)/g.exec(input);
- var input = 'foo bar "lorem ipsum" "dolor sit amet" baz';
- var terms = input.split(" ");
- var items = [];
- var buffer = [];
- for(var i = 0; i < terms.length; i++) {
- if(terms[i].indexOf('"') != -1) { // outer phrase fragment -- N.B.: assumes quote is either first or last character
- if(buffer.length === 0) { // beginning of phrase
- //console.log("start:", terms[i]);
- buffer.push(terms[i].substr(1));
- } else { // end of phrase
- //console.log("end:", terms[i]);
- buffer.push(terms[i].substr(0, terms[i].length - 1));
- items.push(buffer.join(" "));
- buffer = [];
- }
- } else if(buffer.length != 0) { // inner phrase fragment
- //console.log("cont'd:", terms[i]);
- buffer.push(terms[i]);
- } else { // individual term
- //console.log("standalone:", terms[i]);
- items.push(terms[i]);
- }
- //console.log(items, "n", buffer);
- }
- items = items.concat(buffer);
- //console.log(items);
- 'foo bar "lorem ipsum" baz'.match(/"[^"]*"|w+/g);
- output = /(".+?"|w+)/g.exec(input)
- output = /"(.+?)"|(w+)/g.exec(input)
- 'foo bar "lorem ipsum" baz'.match(/("[^"]*")|([^s"]+)/g)
- output: ['foo', 'bar', '"lorem ipsum"', 'baz']
- var input = 'foo bar "lorem ipsum" baz';
- var R = /(w|s)*w(?=")|w+/g;
- var output = input.match(R);
- output is ["foo", "bar", "lorem ipsum", "baz"]
- var input2 = 'foo bar lorem ipsum" baz'; var output2 = input2.match(R);
- var input3 = 'foo bar "lorem ipsum baz'; var output3 = input3.match(R);
- output2 is ["foo bar lorem ipsum", "baz"]
- output3 is ["foo", "bar", "lorem", "ipsum", "baz"]
- var input4 = 'foo b"ar bar" "bar "lorem ipsum" baz';
- var output4 = input4.match(R);
- output4 is ["foo b", "ar bar", "bar", "lorem ipsum", "baz"]
Add Comment
Please, Sign In to add comment