匹配所有空格的正则表达式:
\sand\s
\sor\s
\sbut\s
,\s
输入
字体粗细,宽度和高度,背景或背景颜色,但转换样式
input.replace(regex,"-")
匹配
字体重量,宽度和高度,背景或背景
颜色,但变换
样式
替换
字体-
重量,宽度和高度,背景或背景-
颜色,但变换-
样式
的输出
font-weight,width和height,background或background-color,但是transform-style
答案 0 :(得分:2)
由于JavaScript不支持外观,因此您无法找到正则表达式,因为您可以像在那里一样简单地执行此操作。如果您愿意稍微扩展替换逻辑,可以使用以下答案(改编自此处的答案:Regex negative lookbehind not valid in JavaScript)
var input = " font weight, bland food, width and height, background, or background color, but transform style, and background repeat"
var regex = /\b(\s?and|\s?but|\s?or|,)?\s/g
var output = input.replace(regex, function($0, $1) {
return ($1 ? $0 : "-")
});
console.log(output);