验证url的正则表达式,文件名含有中文,如何表达?

Could 2004-11-08 10:32:06
验证url的正则表达式为:
((http|ftp)://)?(((([\d]+\.)+){3}[\d]+(/[\w./]+)?)|([a-z]\w*((\.\w+)+){2,})([/][\w.~]*)*)\.gif
我想提取某些图片文件的gif,象上面这样只能提取英文的,如果文件名为中文就不行。
比如说可能有文件为“呵呵.gif”、“呵呵2.gif”、“ht熊猫2.gif”,就是说其中可能夹杂着中文,该如何表达这个正则表达式?
谢谢。
...全文
339 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mobydick 2004-11-08
  • 打赏
  • 举报
回复
汗,这里是C#论坛。
不过
[\u4e00-\u9fa5]

这个就是汉字的十六进制表示方法了,应该可以用的。
Could 2004-11-08
  • 打赏
  • 举报
回复
非常感谢大家,尤其是 saucer(思归),
我开始没说清楚,
我现在用的是delphi,
不支持unicode,
是ansi字符,
该怎么表达呢?谢谢。
hell9999 2004-11-08
  • 打赏
  • 举报
回复
(思归) 大侠就是牛啊
mobydick 2004-11-08
  • 打赏
  • 举报
回复
不用改吧,\w可以匹配中文。
Alden 2004-11-08
  • 打赏
  • 举报
回复
不清楚,不过你试一试着两个,结合一下使用
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
saucer 2004-11-08
  • 打赏
  • 举报
回复
change

\w

to

\w\u4e00-\u9fa5

or actually in .NET, \w is different:

\w
Matches any word character. Equivalent to the Unicode character categories
[\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \w is equivalent to [a-zA-Z_0-9].

http://msdn.microsoft.com/library/en-us/cpgenref/html/cpconCharacterClasses.asp?frame=true
生活真美好 2004-11-08
  • 打赏
  • 举报
回复
gz

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧