在JavaScript中删除带有正则表达式的下划线

在JavaScript中删除带有正则表达式的下划线,javascript,regex,Javascript,Regex,正如标题所说,我想删除带有正则表达式的字符串中的下划线。这就是我所拥有的: function palindrome(str) { str = str.toLowerCase().replace(/[^a-zA-Z]/g, '',/\s/g, '',/[0-9]/g,''); if (str.split("").reverse().join("") !== str) { return false; } els

正如标题所说,我想删除带有正则表达式的字符串中的下划线。这就是我所拥有的:

  function palindrome(str) {

     str = str.toLowerCase().replace(/[^a-zA-Z]/g, '',/\s/g, '',/[0-9]/g,'');  
        if (str.split("").reverse().join("") !== str) {
           return false;
        }
        else {
           return true;
        }
   }
palindrome("eye");
使用
.replace(/\ug,“”)
删除所有下划线,或使用
.replace(/\ug,“”)
将其替换为空格

以下是删除它们的示例:

var str=“是的,这里有很多下划线”;
var newStr=str.replace(/g/g,“”);
警报(newStr)

这应该是可行的。

您可以使用
。替换
来实现这一点。使用以下代码。它将用
第二个参数
替换所有
。在我们的例子中,我们不需要第二个参数,因此所有
\uu
都将被删除

<script>
var str = "some_sample_text_here.";
var newStr = str.replace(/_/g , "");
alert ('Text without underscores : ' + newStr);
</script>

var str=“此处有一些示例文本。”;
var newStr=str.replace(/g/g,“”);
警报('不带下划线的文本:'+newStr);

您可以从响应或任何字符串中删除下划线 像这样:“你好”

代码:

var rizo="hello_rizo"
console.log('output', e.response.data.message.replace(/(^|_)./g, s => s.slice(-1).toUpperCase()));
输出:
hellorizo

为什么不使用
str=str.toLowerCase().match(/[A-Za-z0-9]/gi)
使代码看起来更漂亮

这应该行得通。什么不起作用?注意:您不需要
toLowerCase()
。是的,但下划线似乎没有被删除。您需要将结果
str=str.replace…
分配给变量。@Tushar我在我的代码
中这样做了。replace(/[^a-zA-Z]/g',/\s/g',/[0-9]/g')
您不能像这样使用
replace
。您可以将它们链接到
。替换(/[^a-zA-Z]/g',)。替换(/\s/g',)。替换(/[0-9]/g',)
。在您的情况下,您不需要这个,您可以使用
str.replace(/u/g,”)
var rizo="hello_rizo"
console.log('output', e.response.data.message.replace(/(^|_)./g, s => s.slice(-1).toUpperCase()));