Javascript регулярное выражение, чтобы получить первый член в левой части данного знака? - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть такая строка

str = "Is toffee=sweet?"

Теперь я хочу извлечь первый член в левой части =, который будет toffee.

Так что я делаю это

str.split("=")[0].split(" ").splice(-1,1)[0]

Я получаю toffee

Но если строка похожа на это

str = "Is toffee   =sweet?"

Я получаю empty string

Есть ли любое регулярное выражение, которое я могу использовать так, чтобы первое слово в левой части = независимо от того, сколько пробелов там было всегда поймано?

1 Ответ

1 голос
/ 27 апреля 2020

Вы можете разделить на \s*=\s*, чтобы обеспечить использование пространства вокруг =:

const str = "Is toffee   =sweet?"
console.log(str.split(/ *= */)[0].split(" ").splice(-1,1)[0]);

Я думаю, что match будет более понятным, чем разделение и сращивание:

const str = "Is toffee   =sweet?"
const match = str.match(/\w+(?= *=)/);
console.log(match[0]);

\w+(?= *=) соответствует одному или нескольким символам слова, за которыми следуют ноль или более пробелов и =.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...