js上传文件名不能包含特殊字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js上传文件名不能包含特殊字符相关的知识,希望对你有一定的参考价值。

参考技术A 判断 JS “字符串”中包含某个“字符串”,最好的办法就是 String.prototype.includes,这个 api 被发明出来就是干这个的,它直接返回布尔值,立刻就能拿来用。
如果你需要兼容某些老旧浏览器,那么就用 String.prototype.indexOf,然后判断它的返回值是不是 -1,-1 相当于 false,其它值相当于 true。
参考技术B decodeURI() 解码某个编码的 URI。
decodeURIComponent() 解码一个编码的 URI 组件。

encodeURI() 把字符串编码为 URI。
对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的: , / ? : @ & = + $ # (可以使用 encodeURIComponent() 方法分别对特殊含义的 ASCII 标点符号进行编码。).

encodeURIComponent() 把字符串编码为 URI 组件。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: -

js 正则包含字符

<!---->
请问用js 正则如何 检查字符里是否包含 <!-- -->
其它 <!-- 以及 --> 是不能分开的。
谢谢。

js 正则表达式检测是否包含特殊字符,代码如下:

<script language="javascript" type="text/javascript">
    
    var title=\'js判断字符串是否包含特殊字符~`\';
    //正则中添加需要验证的特殊字符
    var vkeyWords=/[`~!@#$^&*()+=|\\\[\]\\:;\'\,.<>/?]/;
    if(vkeyWords.test(title))
       console.log(\'标题含有特殊字符\');
    else
        console.log(\'标题正常\');
    
 
  </script>

js 正则表达式判断字符串是否包含特定的字符串,代码如下:

<script language="javascript" type="text/javascript">
    var title=\'js正则判断字符串是否包含js字符串\';
    //标题含有js字符串
    var vkeyWords=/js/;
    //标题开头为js的字符串>js正则判断字符串
    //var vkeyWords=/^js/;
    //标题结尾为js的字符串>字符串是否包含js
    //var vkeyWords=/js$/;
    //标题开头和结尾为js的字符串>js
    //var vkeyWords=/^js$/;
    if(vkeyWords.test(title))
       console.log(\'标题含有js字符串\');
    else
        console.log(\'标题不含有js字符串\');
    
    
  </script>
参考技术A /^<\!-2,n.*-2,n>$/本回答被提问者采纳

以上是关于js上传文件名不能包含特殊字符的主要内容,如果未能解决你的问题,请参考以下文章

从文件名中删除特殊字符

如何使用 jQuery 或其他 js 框架将字符串作为文件上传

php WordPress - 上传时清除特殊字符的文件名

Python3上传中文文件名的问题

python+selenium上传本地文件

如何用PHP控制文件上传类型?如*.jpg.