0

我有一个表单,让用户在下载文件时输入他们想要的带有扩展名的文件名,但我需要在客户端进行验证(不包含[^/?*:;{}\\]+\\.[^/?*:;{}\\]+类似的东西)。文件名不需要包含扩展名,但如果他们愿意,可以。我发现了这一点:Validate a file name on Windows 但我对 jQuery 不够熟练,无法使其正常工作。

4

2 回答 2

0

正如我的评论所说,它不是 jQuery 问题,而是你所追求的 javascript 问题。

你可以走两条路,最简单的是

var myString = "hello world";
var regexp = /w+/
var match = regexp.exec(myString);
console.log(myString); //will print the world "hello"

另一个将使用Regexp Object.

简单地代替使用“文字正则表达式”,如果您同意这样称呼它,请使用对象

var re = new RegExp("\\w+");
var match = re.exec(myString);
console.log(myString); //will print the world "hello"

这个方便的网站是 Ruby 正则表达式的主要网站,但它是创建正则表达式的好工具

红色的

于 2012-12-31T17:19:56.837 回答
0

您可以为此尝试以下代码。如果有效,这将返回文件名。否则它将返回null

var filename = ''; // enter your file name here
alert(filename.match(/^\s*[a-z-._\d,\s]+\s*$/i))

如果要排除某些字符,请在方括号内提及这些字符,如下所示

/^[^<>%$]*$/
于 2012-12-31T17:20:44.193 回答