tomen
tomen

Reputation: 539

Javascript - Split string by first 2 white spaces

I have a string, which contains multiple white spaces. I want to split it by only first 2 white spaces.

224 Brandywine Court Fairfield, CA 94533

output

["224", "Brandywine", "Court Fairfield, CA 94533"]

Upvotes: 2

Views: 1866

Answers (3)

JayJamesJay
JayJamesJay

Reputation: 623

const str ="224 Brandywine Court Fairfield, CA 94533";
const arr = str.split(" ");
const array = arr.slice(0, 2).concat(arr.slice(2).join(" "));

console.log(array);

You can do it with split and slice functions.

Upvotes: 5

StepUp
StepUp

Reputation: 38209

If you only care about the space character (and not tabs or other whitespace characters) and only care about everything before the second space and everything after the second space, you can do it:

let str = `224 Brandywine Court Fairfield, CA 94533`;
let firstWords = str.split(' ', 2);
let otherWords = str.substring(str.indexOf(' ', str.indexOf(' ') + 1));
let result = [...firstWords, otherWords];

Upvotes: 1

George
George

Reputation: 2422

Here is how I might do it.

const s = "224 Brandywine Court Fairfield, CA 94533";

function splitFirst(s, by, n = 1){
  const splat = s.split(by);
  const first = splat.slice(0,n);
  const last = splat.slice(n).join(by);
  if(last) return [...first, last];
  return first;
}
console.log(splitFirst(s, " ", 2));

Upvotes: 3

Related Questions