首页
学习
活动
专区
工具
TVP
发布
您找到你想要的搜索结果了吗?
是的
没有找到

从 RegExp 构造器看 JS 字符串转义设计

2、表单输入项的字符串赋值给变量时也无需转义 假设页面中存在输入框 ,在输入框中输入字符 \w+\.ke\.qq\.com,则通过 JS 获取到的值可以直接传入 RegExp...构造器,同样无需考虑转义问题。...3、JS 代码中的转义处理 另外一种可能用到 RegExp string 参数的场景是:基于 JS 逻辑,动态创建正则表达式。例如正则表达式 /\w{3}/ 中的数字 3,是通过某个变量来传递的。...为了解决模板字符串的解析和转义问题,ES6 模板字面量中引入了反引号(`)和 tag function(知名「CSS in JS」 库 styled-components 中大量使用了这种语法)。...回过头来看,JS 正则表达式构造器的参数设计问题,其实不是 RegExp 引起的,而是 JavaScript String 的设计缺陷:单引号和双引号非但没有参考 PHP/Shell 之类的设计,反而给前端社区留下

12.8K80

一日一技:批量转义正则表达式中的特殊符号

我们发现最近出现了一批神秘的聊天消息,这些消息的特征为: 表情符号微信号好玩 例如: (^_^)加wei辛8五⑦久久二爸好玩~_>我的Q扣八七3玖二流好玩 这些聊天记录总是以表情符号开头,以 好玩结尾。...但在实际使用过程中,我们发现颜文字里面有非常多的小括号、中括号、大括号、星号、点号、问号之类的符号,这些符号在正则表达式里面有特殊用途,如果直接评价成一个pattern,就会导致正则表达式匹配出问题。...当然我们可以使用replace一个一个给这些特殊符号左边添加反斜杠。但是这样写太过麻烦。 在Python里面,正则表达式模块已经帮我们实现了这个功能—— re.escape。...re.escape可以把传给他们的字符串里面,所有有特殊意义的符号前面加上反斜杠,但又不影响正常的字符。 例如: import reslogan = '你好,{产品经理*_*?'...从Python 3.7开始,只有在正则表达式里面有特殊意义的符号才会被加上反斜杠。 所以还在用老版本Python的同学,快点换到新版本来吧。

1.5K30

JS魔法堂:再识ASCII实体、符号实体和字符实体

本文打算对三类HTML实体及JS相关操作作进一步的整理和小结,若有纰漏请大家指正,谢谢。...三、3种实体类型                                        实体分为ASCII实体、字符实体和符号实体。...四、通过outerHTML,innerHTML,innerText,textContent和value操作实体    首先我们需要将3种实体类型分成两类,ASCII实体为一类,字符实体和符号实体为一类。...对于字符实体和符号实体      只能获取对应的字符,无法直接获取实体名和实体编号。 五、总结                                     若有纰漏请大家指正,谢谢。

2.2K80

js正则表达式转义字符-4.   正则表达式的使用

等价于[a-zA-Z0-9]   \W:除所有字母、数字和下划线以外的字符js正则表达式转义字符,相当于[ ^a-zA-Z0-9 ]   \b:单词分界符   \s:匹配空格(包括换行符、制表符、空格符等...),相当于[\t\r\n\v\f]   强调:转义字符 ' \ ',若要输出反斜杠,要使用连续两个’ \ ‘   (5)字符范围示例   [cat]:匹配字符集合中的任意一个字符c、a、t   [ ^cat...(6)量词符   ​ {mjs正则表达式转义字符,n}:表示{}之前的字符可以出现m~n次   ​ {n}:表示{}之前的字符可以出现n次   ?:匹配 ?之前的字符零次或一次。例如:hi?...正则表达式的优先级(优先匹配)   一级:\ 转义字符 (最高)   ​二级:()、[ ]   三级:*、+、?

1.5K30

前端XSS相关整理

也需要考虑编码工作能不能正确地进行过滤 解码顺序: HTML解码 -> URL解码 -> Javascript解码 -> URL解码 引申出去...本文使用了模板Smarty,在使用模板的时候,一般都将模板变量放在了引号中,需要带符号来闭合来实现攻击 "> " onclick=alert(1) 在设置了特殊符号转义的情况下...再进行取值 防止该 标签被恶意代码闭合,然后执行恶意代码,例子可见上文的 Payload-6 还要注意JS的语法,在某些时候,特殊符号 反斜杠\ 没有过滤的话,也有安全问题 <script...a=\' + '&b==alert(1);function b(){}//'; 假设只对 ' " > < & 进行了转义,可以试试从URL拿数据,这里需要利用到JS代码中关键的 &...符号与 \ 转义符 \ 将第一个分号转义为字符串 & 与运算将前后分离 b的参数加上 = 号构造处bool运算 为了防止b未定义,在后面用函数提升特性来定义 最后注释符防止报错 为了攻击也是蛮拼的...

4.5K31

【网络攻防】xss 脚本注入、csrf 跨域请求伪造

1. xss 脚本注入 不需要你做任何的登录认证,他会通过合法的操作(比如: url 中输入,在评论框输入),向你的页面注入脚本(可能是 js、html 代码块等)。...xss 防御 编码: 对用户输入的数据进行 HTML Entity 编码(字符转义编码)。把字符转换成转义符,编码的作用是将一些字符进行转义,使得浏览器在最终输出的结果上是一样的。...实体常常用于显示保留字符(这些字符会被解析为 HTML 代码)和不可见的字符(如“不换行空格” 不可分的空格: ; <(小于符号):<; >(大于符号):>; &(与符号):&...; ″(双引号):"; ‘(单引号):’&apos; ©(版权符号)©; 过滤: 移除用户输入事件和相关的属性。

61030
领券