正则表达式:JavaScript

正则表达式:JavaScript,javascript,regex,client-side,Javascript,Regex,Client Side,下面的陈述将具体起到什么作用: a、 替换/[^\w-]/g,'-' 我想在单词中找到所有“-”的实例,并替换为“-” 另外,如果在字符串的起始和结束处发现任何“-”的实例,我希望将其删除 以下是我的要求: 嗨@raju你好吗 我想把整个词隐藏起来,如下所示: 嗨raju你好吗 条件: 将空格替换为“-”。 2.将特殊字符替换为“-”。 3.如果我们有一个以上的'-',则用单个'-'替换所有'-'。 删除字符串开头和结尾的“-”。 一旦可行,解决方案如下: " Hi @raju how do y

下面的陈述将具体起到什么作用:

a、 替换/[^\w-]/g,'-'

我想在单词中找到所有“-”的实例,并替换为“-”

另外,如果在字符串的起始和结束处发现任何“-”的实例,我希望将其删除

以下是我的要求:

嗨@raju你好吗

我想把整个词隐藏起来,如下所示:

嗨raju你好吗

条件:

将空格替换为“-”。 2.将特殊字符替换为“-”。 3.如果我们有一个以上的'-',则用单个'-'替换所有'-'。 删除字符串开头和结尾的“-”。
一旦可行,解决方案如下:

" Hi @raju how do you do? ".replace(/\s+|[@\?]/g,'-')
    .replace(/--+/g,'-')
    .replace(/^[\s-]+|[\s-]+$/g,'')
>> output: "Hi-raju-how-do-you-do"

您可以在第一次替换中向[]添加任何其他“特殊”字符

除了上面的例子中的“@”之外,你的特殊字符是什么?“@”只是特殊字符,但我用“-”替换每个空格,就像上面提到的4个条件一样。你这里有两个问题。这是你第一次尝试的第一次替换吗?如果你有更好的理解的话,我建议你先看一看,然后尝试一些尝试。如果你想用一个字符串来替换不是字母或数字的所有东西,并且希望正则表达式很容易为别人或将来的人所理解,请考虑这样的事情:A.替换[/[Z-ZA-Z09- ] +/g, '-'. 至少对我来说,这更清楚。不管怎么说,正则表达式都很清楚:这个表达式将确切执行什么操作。replace/[^\w-]/g,'-'