替换多个字符 - 正则表达式

时间:2015-10-01 11:41:16

标签: javascript regex

如果有更多的话,我会尝试做 - 在我的字符串中将其替换为单个 - 例如。

---替换为-

test---demo替换test-demo

我的功能是

function strconvert( str ) {
  var ret = str;

  ret = ret.replace( /ø/g, 'oe' );
  ret = ret.replace( /Ø/g, 'OE' );
  ret = ret.replace( /å/g, 'aa' );
  ret = ret.replace( /Å/g, 'AA' );
  ret = ret.replace( /æ/g, 'ae' );
  ret = ret.replace( /Æ/g, 'AE' );
  ret = ret.replace( /\_/g, '-' );

  ret = ret.replace(/[^a-zA-Z0-9\/-]/ig,'-').replace(/_+/ig,'-').toLowerCase();

  return ret;
}

1 个答案:

答案 0 :(得分:3)

您可以使用replace( /-+/g, '-' );

ret = ret.replace( /-+/g, '-' );

更新:您可以将.replace(/_+/g,'-').replace(/-+/g,'-')合并到.replace(/[_-]+/g,'-')