可能重复:
reject if file name contains non english character正则表达式对非英文字符
如何检查文件名包含非英文字符像 思科-S11-POA1800005815-Inv04736851-100919重做没有。 pdf我需要避免非英文字符
可能重复:
reject if file name contains non english character正则表达式对非英文字符
如何检查文件名包含非英文字符像 思科-S11-POA1800005815-Inv04736851-100919重做没有。 pdf我需要避免非英文字符
// Disallow anything but a-z, 0-9, underscore, period, hyphen, and comma
var disallowed = /[^a-z0-9_.,-]/i;
if (disallowed.test(myFileName)){
// do something here
}
添加到您认为合适的允许字符列表,但确保连字符位于列表的末尾,否则使用\-
进行转义。
正确的答案取决于了解你的字符集。
但正则表达式是这样的:
var re = /[\x80-\xFF]/;
if (re.match(...)) {
alert("File name contains non-ASCII character!");
}
是一个快速的答案。
请注意,如果您的文件名包含任何特殊符号,它也会投诉。
也许白名单,只说允许的字符,是一个更好的选择,像这样?
var re = /[^A-Za-z0-9_,.-]/;
if (re.match(...)) {
alert("File name contains non-ASCII character!");
}
允许使用哪些字符? – Phrogz 2011-01-27 06:17:02
定义“非英文”字符的含义。 – 2011-01-27 06:19:17
重复[拒绝如果文件名包含非英文字符](http://stackoverflow.com/questions/4790950/reject-if-file-name-contains-non-english-character),昨天由同一用户问及没有答案被接受。 @vijay:重新问你的问题绝对不是获得积极帮助的方法。 – Phrogz 2011-01-27 06:22:37