Разделить строку Математические операторы Регулярное выражение

Я хочу разделить основные математические операторы из строки формулы и получить операнды, я использую следующее регулярное выражение:

(/[+,-,*,/]/g)

Он отлично работает с + , / и *, но не с -.

Пример ввода 1:"a+b".split(/[+,-,*,/]/g) .
Пример вывода 1: ["a","b"]//работает нормально

Пример ввода 2:"a-b".split(/[+,-,*,/]/g) .
Пример вывода 2:["a-b"] //Not working fine :( should return ["a", "b"], but returns ["a-b"]

Я хотел бы знать, чего мне не хватает в моем выражении.
У меня есть альтернатива, т.е. перебирать всю строку и возвращать новый массив без операторов, но я хочу использовать регулярное выражение.

Спасибо

Используйте /[+*/-]/, не забывайте всегда оставлять - в начале/конце класса символов. Помещение - в начале класса символов работает во всех известных мне вариантах регулярных выражений.

Wiktor Stribiżew 25.03.2019 09:11

Вам не нужно , между символами в скобках.

Seblor 25.03.2019 09:11

попробуйте это "a-b".split(/[+,\-/,*,/]/g)

Sameer 25.03.2019 09:13

@Самир не используйте , в классе символов. Это не перечисляет все возможности, это означает «включить , в список вещей, соответствующих этому классу символов».

VLAZ 25.03.2019 09:16
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
35
0

Другие вопросы по теме