JAVASCRIPT正则表达式太奇怪了

cxc3214 2012-02-11 11:12:11

var a = /^[a-zA-Z]\w{5,17}$/i;
alert(a.test("abncdfe"));
//结果是 true
var b = "^[a-zA-Z]\w{5,17}$";
alert(new RegExp(b,"i").test("abncdfe"));
//这个结果却是 false


看代码。有人遇到过吗?
...全文
50 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
p2227 2012-02-12
  • 打赏
  • 举报
回复
转义字符的问题

<script>
var a = /^[a-zA-Z]\w{5,17}$/i;
alert(a.test("abncdfe"));
//结果是 true
var b = "^[a-zA-Z]\\w{5,17}$";
alert(new RegExp(b,"i").test("abncdfe"));

</script>
cxc3214 2012-02-12
  • 打赏
  • 举报
回复
结贴给分
ciznx 2012-02-12
  • 打赏
  • 举报
回复
楼上正解

第二种方式里,\w 在转义字符里没有意义,最终系统中存储的时候会把 \w 重新置为 w,因此用它来创建的正则与原有方式不一致。
使用用户定义的规则将HTTP重定向到HTTPS。 [注意:处于Alpha状态]如果您想在幕后看一些东西,写一些正则表达式,或者想要一种更安全的方法来防止使用TLS或SSL加密的大规模XSS攻击。 HTTPS Somewhere不会让您失望。 这是另一个HTTPS重定向扩展,可以完全满足您的要求。 (有关更好的主意,请参见屏幕截图。)是什么使HTTPS Somewhere与HTTPS Everywhere不同? -对重要内容进行加密,而不是尝试对尽可能多的网站进行加密。 -即使在不安全的网页上也可以使用资源和元素。*-您可以通过更高级的用户界面完全控制重定向。 -利用强大的正则表达式,您可以定义可以想象的任何模式。 -完全在后台运行,没有图标添加到工具栏。 -未经您的同意,HTTPS Somewhere绝对不会破坏任何网站。 -它不会比你聪明。 一些限制:-与HTTPS Everywhere相比相对困难。 -无法重定向到其他主机名。 如何使用? -检查chrome:// extensions /中的“选项”链接*为什么这很重要? 尽管页面本身不是安全的,为什么还要确保某些资源的安全呢? 它没有使任何事物更安全,对吗? 在泰国,有一种情况是攻击者利用某些ISP的缓存服务器。 (可能与DNS和奇怪的缓存行为有关。详细信息从未公开,此案被ISP拒绝。但是,此案影响了数百万个端点,引起了很多目击者。)攻击者专注于Google的服务(但不限于此)到)Google Analytic和Google Ads。 结果是我一生中见过的规模最大,规模最大的javascript注入。 (我估计攻击者从这一攻击中获得的收入至少为6个数字美元。该攻击持续了几个月,因为它高度不一致。)因此,从理论上讲,这可能不会为任何页面获得任何安全性或阻止夏娃这样做坏事,但实际上确实可以防止某些攻击媒介。 支持语言:English (United States)
Advanced Renamer 是一个用于一次重命名多个文件和文件夹的程序。通过配置重命名方法,可以以各种方式操纵名称。在大量文件上使用多种方法设置批处理作业很容易。 通过 14 种不同的方法,您可以一次更改文件的名称,属性和时间戳。 还可以根据文件中的信息将文件复制或移动到新位置。使用 Advanced Renamer,您可以通过添加,删除,替换,更改大小写或根据有关文件的已知信息为文件提供全新名称来构建新文件名。在对文件执行操作之前,您可以验证输出是否正确,如果执行重命名并后悔,则可以撤消整个批处理。 高级批量重命名工具 Advanced Renamer 中文版高级批量重命名工具 Advanced Renamer 中文版 图像文件 这种海量文件重命名器是一个很好的实用程序,可以为专业人士和初学者组织数字图片。缩略图模式允许您直接在文件列表中显示缩略图,从而最大限度地控制重命名过程。使用此程序,您可以快速重命名所有照片。 GPS数据 如果您的图像文件包含GPS数据,您可以添加城市名称和拍摄照片的国家/地区。坐标用于从包含全球 100,000 多个城市的数据库中查找城市,国家和州名称。 音乐文件 MP3和其他音乐文件经常混淆名称并包含奇怪的字符。使用 Advanced Renamer,您可以使用内置的 ID3 功能将喜爱的音乐文件的名称更改为更合适的名称。 视频文件 曾经想过将编解码器或视频分辨率添加到文件名中吗?使用视频标签,您可以向名称添加有关视频和音频内容的各种信息。 电视节目 从 tvmaze.com 网站导入节目信息后,将剧集标题或播出日期添加到包含电视节目的视频文件中。 精选功能 Unicode 支持 实时预览新名称 基于标签的重命名 使用 MP3/ID3 信息重命名 使用正则表达式和通配符 使用EXIF支持重命名图像 显示图像的缩略图 使用视频标记重命名 使用图像文件中的GPS信息 重命名时使用导入的电视节目数据 支持文件和文件夹 撤消上一批 几种重命名方法 一次使用多种方法 批处理模式:重命名,复制,移动 使用 JavaScript 创建自定义方法 设置文件时间戳和文件属性 重命名方法 带有标签的新名称 更改文件名的大小写 删除/删除部分文件名 从文件名中删除模式 替换部分文件名 在文件名中添加/插入文本 移动部分文件名 基于名称列表的新名称 更改文件属性 更改文件时间戳 修剪文件名 重新编号 互换 自定义批处理脚本

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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