В настоящее время, чтобы удалить пунктуацию из строки, я использую:
export function scrubPunctuation(text) {
let reg = /\b[-.,()&$#![\]{}"']+\B|\B[-.,()&$#![\]{}"']+\b/g;
return text.replace(reg, "");
}
, но это также удаляет -1
, где -
не столько "пунктуация", сколько часть числового значения.
Как мне решить эту проблему?
Пример использования:
Я взял строку от пользователя, которая может выглядеть следующим образом:
const userStr = " I want something, sort of, that has at least one property < -1.02 ? "
В настоящее время мой подход заключается в том, чтобы сначала trim
строка для удаления начального / конечного пробела.
Затем я «убираю» пунктуацию из строки.
Из приведенного выше примера userStr
я мог бы в конечном итоге разобраться (через некоторые не связанныев регулярное выражение):
const relevant = ["something", "at least one", "<", "-1.02"]
Как правило, нечисловая пунктуация не имеет значения.