Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果两个单词之间有n个连字符,如何删除单词之间的n-1个连字符_Javascript_Regex - Fatal编程技术网

Javascript 如果两个单词之间有n个连字符,如何删除单词之间的n-1个连字符

Javascript 如果两个单词之间有n个连字符,如何删除单词之间的n-1个连字符,javascript,regex,Javascript,Regex,假设有一个字符串,如: abc--def-ghi & jkl---mno 它应替换为: abc-def ghi & jkl--mno 我试过: slugName = $(this).val().replace(/[^a-z0-9]/gi, '-').replace(/[\-]+/g, '-') 更新: 用于查找n个连字符和一个连字符(例如(---)() 并将其替换为第一个表达式的结果 $1 留下n-1个连字符。在sublime edit中测试,请在问题中包含您的尝试。请同

假设有一个字符串,如:

abc--def-ghi & jkl---mno
它应替换为:

abc-def ghi & jkl--mno
我试过:

slugName = $(this).val().replace(/[^a-z0-9]/gi, '-').replace(/[\-]+/g, '-')

更新:

用于查找n个连字符和一个连字符(例如(---)()

并将其替换为第一个表达式的结果

$1

留下n-1个连字符。在sublime edit中测试,请在问题中包含您的尝试。请同时包含一个标记,指定您正在使用的编程语言或工具。您的问题至少应表明您首先尝试自己解决问题,包括您所做的尝试,以及您遇到的问题,例如。slugName=$(此).val().replace(/[^a-z0-9]/gi,“-”).replace(/[\-]+/g,“-”)我正在使用Visual Studio 2010 MVC与javascript、jquery一起使用。但是
-*
也可以匹配零个连字符,不是吗?@sudo_O根据标题,OP想要删除n-1个连字符,这只剩下一个。我不想用单连字符替换它,我想用n-1连字符替换它,如果有单连字符,我想用空格替换它,谢谢你的回复。等待预期的答案。
$1