如何使用 JavaScript 删除字符串中除数字和空格之外的所有特殊字符

How to remove all special characters except numbers and space in a string using JavaScript?

本文关键字:空格 特殊字符 数字 JavaScript 何使用 删除 字符串      更新时间:2023-09-26

我正在开发一个Phonegap Android应用程序。现在我想将一些参数从一个页面传递到另一个 html 页面。我没有使用任何服务器端方法。在第二页中,我想使用 JavaScript 从第一页获取所有传递的参数。

例如,下面是一个网址:

file:///

C:/Users/dell/Projects/testapp1/search_result.html?searchstr=word1+*%26^+word2+3+word3+%40%23&city=city&showdish near=false

以下函数用于提取每个参数值:

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi,
        function (m, key, value) {
            vars[key] = value;
        });
    return vars;
}
searchString = getUrlVars()["searchstr"]; // this is how I call above function to get value of passed particular parameter

现在我想删除变量searchString中除数字和空格以外的所有特殊字符。

我使用了以下代码:

searchString = searchString.replace(/[^a-zA-Z ]/g, " ");

但这并不能解决我的问题。如何使用 JavaScript 删除字符串中除数字和空格以外的所有特殊字符?

searchString.replace(/[^a-z'd's]+/gi, "");

删除除字母、数字和空格之外的所有内容。

var s = 'keep%8$this part 3£$@plz £$% @£';
s.replace(/[^a-z'd's]+/gi, "");
// "keep8this part 3plz  "

只需添加以下代码即可替换所有字母数字字符(标点符号、步调、下划线)

var string = str.replace(/[^A-Za-z0-9]/g,"")