用于验证embed标记的正则表达式

时间:2012-07-09 05:37:36

标签: embed

我有一个文本框,供用户在其中粘贴嵌入标签,但我想验证,天气用户没有输入嵌入标签以外的任何其他代码,因此我需要验证嵌入标签。

1 个答案:

答案 0 :(得分:1)

\s*(https?://)www.youtube(-nocookie)?.com/(?:v|embed)/[\p{L}\p{N}]+[\p{L}\p{N}\p{Zs}.#@$%+&;:_~,?=!/-]*\s*

我冒昧地删除了不必要的捕获组,逃脱和角色。

虽然我个人会使用类似的东西:

\s*(https?://www.youtube(?:-nocookie)?.com/(?:v|embed)/([a-zA-Z0-9-]+).*)

这会将整个youtube网址放在匹配组0中,并将视频ID设置为匹配组1.此外,当youtube的网址没有使用时,使用unicode属性也没有多大意义。' t包含unicode字符 演示:http://rubular.com/r/jv4zO9ys2L