Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.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 删除除“以外的所有特殊字符”;“一些”;撇号_Javascript_Regex - Fatal编程技术网

Javascript 删除除“以外的所有特殊字符”;“一些”;撇号

Javascript 删除除“以外的所有特殊字符”;“一些”;撇号,javascript,regex,Javascript,Regex,我正在尝试创建一个函数,当撇号自然成为单词的一部分时,它会删除除撇号以外的所有特殊字符(包括句点)。我创建的正则表达式模式应该删除任何不符合word模式的内容,或者后跟撇号”和/或另一个word: 函数删除特殊字符(str){ 返回str.toLowerCase().replace(/[^a-z?'?a-z]/g,``) } log(删除特殊字符(`I'm a string.`)) log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`)) console.log(removeSpec

我正在尝试创建一个函数,当撇号自然成为单词的一部分时,它会删除除撇号以外的所有特殊字符(包括句点)。我创建的正则表达式模式应该删除任何不符合
word
模式的内容,或者后跟撇号
和/或另一个
word

函数删除特殊字符(str){
返回str.toLowerCase().replace(/[^a-z?'?a-z]/g,``)
}
log(删除特殊字符(`I'm a string.`))
log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`))

console.log(removeSpecialCharacters(`'''`))
将模式替换为
'\B
,这将匹配并删除不后跟单词字符的撇号,例如
ab'
ab'@
,同时保留类似
ab'c
的字符串:

函数删除特殊字符(str){
返回str.toLowerCase().replace(/'\B|[^a-z'?]/g,``)
}
log(删除特殊字符(`I'm a string.`))
log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`))

console.log(removeSpecialCharacters(`'''`))
将模式替换为
'\B
,这将匹配并删除不后跟单词字符的撇号,例如
ab'
ab'@
,同时保留类似
ab'c
的字符串:

函数删除特殊字符(str){
返回str.toLowerCase().replace(/'\B|[^a-z'?]/g,``)
}
log(删除特殊字符(`I'm a string.`))
log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`))

log(除去特殊字符(`''`))
这里有一个非常简单的解决方案。要从字符串中删除某些特征,可以通过while循环运行一组if语句。这允许您准确选择要删除的符号

while (increment < string.length)
{
    if (string[increment] == "!")
    }
        delete "!";
    }

    increment += 1;
}
while(增量

这是一个简单的外观概述(不是实际的代码),让您了解自己在做什么。

这里有一个非常简单的解决方案。要从字符串中删除某些特征,可以通过while循环运行一组if语句。这允许您准确选择要删除的符号

while (increment < string.length)
{
    if (string[increment] == "!")
    }
        delete "!";
    }

    increment += 1;
}
while(增量

这是一个简单的外观概述(不是实际的代码),让您了解您正在做什么。

不确定您的错误是什么,因为我看不出您尝试了什么。然而,我让它工作

函数删除特殊字符(str){
str=str.toLowerCase();
//将重复撇号减少为单个撇号
str=str.replace(/'+/g,`'`);
//摆脱古怪的角色
str=str.replace(/[^a-z'\s]/g');
//替换悬挂的撇号
str=str.replace(/(^ |\s)(\s |$)/g,``);
返回str;
}
log(删除特殊字符(`I'm a string.`))
log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`))
console.log(删除特殊字符(``'))

log(删除特殊字符(`regex'til i die`))
不确定您的出现了什么问题,因为我看不到您尝试了什么。然而,我让它工作

函数删除特殊字符(str){
str=str.toLowerCase();
//将重复撇号减少为单个撇号
str=str.replace(/'+/g,`'`);
//摆脱古怪的角色
str=str.replace(/[^a-z'\s]/g');
//替换悬挂的撇号
str=str.replace(/(^ |\s)(\s |$)/g,``);
返回str;
}
log(删除特殊字符(`I'm a string.`))
log(删除特殊字符(`I是一个包含随机内容的字符串。*/-`))
console.log(删除特殊字符(``'))

log(删除特殊字符('regex'直到我死)
非常感谢!这正是我想要的:)你真的想把所有东西都小写吗?(如果没有,您可以使用不区分大小写的标志)非常感谢!这正是我想要的:)你真的想把所有东西都小写吗?(如果不是,可以使用不区分大小写的标志)