首页 > 解决方案 > 使用 ASCII 代码格式化字符串和删除特殊字符不起作用 (JavaScript)

问题描述

我试图使用 ASCII 代码格式化任何给定的字符串以供参考。格式必须删除除数字、“-”或“_”和空格之外的任何特殊字符。这是代码:

 function FormatString(sentence) {
        result = new String();
        j = 0;
        sentence = sentence.toUpperCase();
        i = 0;

        while(i < sentence.length) {
            if (
                (sentence[i]>=65 && sentence[i]<=90) ||
                (sentence[i]>=48 && sentence[j]<=57) ||
                sentence[i]==32 || sentence[i]==45
            ) {
                sentence[j] = result[i];
                j = j + 1;
            }
            i = i + 1;
        }
        return result;
    }

然后调用函数

console.log(FormatString('No running in the hallways!!!'))

输出应该是“不要在走廊里跑步”

标签: javascriptstringformatfrontendascii

解决方案


也许string.replace使用正则表达式可以满足您的需求:

const regex = /[-_]/g
"afasf-afsaf_fafa".replace(regex,''); //"afasfafsaffafa"

推荐阅读