转义

javascript进行url转义方法比较escape、encodeURI和encodeURIComponent

不羁岁月 提交于 2020-03-30 18:21:51
escape会将除了 ASCII 字母、数字和特定的符号(* @ - _ + . /)以外的字符全部进行转义编码,因此如果想对URL编码,最好不要使用此方法,因为它会让你的URL变的不可读。 提示: ECMAScript v3 反对使用该方法,应用使用 decodeURI() 和 decodeURIComponent() 替代它。 encodeURI用于编码整个URI,该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。 该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,# 提示: 如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。 example encodeURI("http://www.w3school.com.cn") encodeURI("http://www.w3school.com.cn/My first/") encodeURI(",/?:@&=+$#") // http://www.w3school.com.cn // http://www.w3school.com.cn/My

编码解码

梦想的初衷 提交于 2020-03-30 17:58:57
js: 一、定义和用法 encodeURI() 函数可把字符串作为 URI 进行编码。 语法 encodeURI(URIstring) 参数 描述 URIstring 必需。一个字符串,含有 URI 或其他要编码的文本。 返回值 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。 说明 该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。 该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,# 提示和注释 提示:如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。 此方法的解码为decodeURI() 二、定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。 语法 escape(string) 参数 描述 string 必需。要被转义或编码的字符串。 返回值 已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。 说明 该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: - _ . !

C#正则表达式

天大地大妈咪最大 提交于 2020-03-28 21:16:30
表达式 匹配 /^\s*$/ 匹配空行。 /\d{2}-\d{5}/ 验证由两位数字、一个连字符再加 5 位数字组成的 ID 号。 /<\s*(\S+)(\s[^>]*)?>[\s\S]*<\s*\/\1\s*>/ 匹配 HTML 标记。 下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 说明 \ 将下一字符标记为特殊字符、文本、反向引用或八进制转义符。例如,“n”匹配字符“n”。“\n”匹配换行符。序列“\\”匹配“\”,“\(”匹配“(”。 ^ 匹配输入字符串开始的位置。如果设置了 RegExp 对象的 Multiline 属性,^ 还会与“\n”或“\r”之后的位置匹配。 $ 匹配输入字符串结尾的位置。如果设置了 RegExp 对象的 Multiline 属性,$ 还会与“\n”或“\r”之前的位置匹配。 * 零次或多次匹配前面的字符或子表达式。例如,zo* 匹配“z”和“zoo”。* 等效于 {0,}。 + 一次或多次匹配前面的字符或子表达式。例如,“zo+”与“zo”和“zoo”匹配,但与“z”不匹配。+ 等效于 {1,}。 ? 零次或一次匹配前面的字符或子表达式。例如,“do(es)?”匹配“do”或“does”中的“do”。? 等效于 {0,1}。 { n } n 是非负整数。正好匹配 n 次。例如,“o{2}”与“Bob”中的“o”不匹配,但与

Linux Shell 通配符、元字符、转义符使用实例介绍

霸气de小男生 提交于 2020-03-27 03:15:18
说到shell通配符(wildcard),大家在使用时候会经常用到。下面是一个实例: #1 [chengmo@localhost ~/shell]$ ls a.txt b.txt c.old #2 [chengmo@localhost ~/shell]$ ls *.txt a.txt b.txt #3 [chengmo@localhost ~/shell]$ ls d*.txt ls: 无法访问 d*.txt: 没有那个文件或目录 从上面这个实例,不知道大家有没有发现问题呢。我们先了解一下,通配符相关知识,再分析下这个实例吧。 一、linux shell通配符(wildcard) 通配符是由shell处理的(不是由所涉及到命令语句处理的,其实我们在shell各个命令中也没有发现有这些通配符介绍), 它只会出现在 命令的“参数”里(它不用在 命令名称里, 也不用在 操作符上)。当shell在“参数”中遇到了通配符时, shell会将其当作路径或文件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进行代换(路径扩展);否则就将该通配符作为一个普通字符传递给“命令”,然后再由命令进行处理。 总之,通配符 实际上就是一种shell实现的路径扩展功能。在 通配符被处理后, shell会先完成该命令的重组,然后再继续处理重组后的命令,直至执行该命令。 我们回过头分析上面命令吧

int型参数的SQL注入

牧云@^-^@ 提交于 2020-03-26 23:12:53
类似PHP语言的 mysql_real_escape_string() 的函数,在用来防范SQL注入的时候,可能会遇到int型注入成功的情况。 mysql_real_escape_string()用法 mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。 下列字符受影响: \x00 \n \r \ ' " \x1a 如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。 使用案例 过滤String型参数的代码案例: <?php $con = mysql_connect("localhost", "hello", "321"); if (!$con){ die('Could not connect: ' . mysql_error()); } // 获得用户名和密码的代码 $user = $_POST("user"); $pwd = $_POST("pwd"); // 转义用户名和密码,以便在 SQL 中使用 $user = mysql_real_escape_string($user); $pwd = mysql_real_escape_string($pwd); $sql = "SELECT * FROM users WHERE user='" . $user . "' AND password='" . $pwd

escape()、encodeURI()、encodeURIComponent()区别详解

馋奶兔 提交于 2020-03-23 07:11:52
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。 下面简单介绍一下它们的区别 1 escape()函数 定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。 语法 escape(string) 参数 描述 string 必需。要被转义或编码的字符串。 返回值 已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。 说明 该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。其他所有的字符都会被转义序列替换。 2 encodeURI()函数 定义和用法 encodeURI() 函数可把字符串作为 URI 进行编码。 语法 encodeURI(URIstring) 参数 描述 URIstring 必需。一个字符串,含有 URI 或其他要编码的文本。 返回值 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。 说明 该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

Markdown语法学习|精简版

你。 提交于 2020-03-17 08:11:04
markdown语法学习 文章开头 点击 这里 回到下方说明页面跳转的位置 此笔记学习摘抄自 Markdown语法大全(超级版) ,基本使用应该足够 此目录由 [toc] 生成 文章目录 markdown语法学习 一、内联 HTML 语法/特殊字符自动转义 二、行内语法 注释 分级标题 任务列表 缩进 换行 对齐方式 斜体/粗体/删除线/下划线/背景高亮 超链接 参考式 注脚 锚点 无序列表、有序列表、定义型列表 插入图像 多级引用 转义字符 设置字体/颜色 常用颜色 三、块代码讲解 目录 行内代码块 多行代码块 表格 LaTeX公式 分割线 HTML 原始码 一、内联 HTML 语法/特殊字符自动转义 对于 Markdown 中未包含的标签, 可以直接使用 HTML标签,例如用 HTML <a> 标签替代 Markdown 的链接语法 在 HTML 中, 有两个字符需要特殊对待: < 和 &,左尖括号用于起始标签。果你想将它们用作字面量, 你必须将它们转义为字符实体, 例如 < 和 & 二、行内语法 注释 <div style='display: none'> 注释 </div> <!-- 注释 --> [//]: # (哈哈我是最强注释1,不会在浏览器中显示。) [^_^]: # (哈哈我是最萌注释2,不会在浏览器中显示。) 分级标题 # 一级标题 ## 二级标题 ###

Oracle的where子句

有些话、适合烂在心里 提交于 2020-03-15 11:55:20
目录 一、生成测试数据 二、where子句的语法 三、逻辑运算符 四、比较运算符 五、where子句的高级用法 六、对where子句的列使用运算和函数 1、对列进行运算 2、对列使用函数 3、存在的问题 七、版权声明 where子句用于从表中或临时数据集中查找满足指定条件的记录,可用于select、update和delete语句中的条件。 一、生成测试数据 用以下SQL创建超女基本信息表(T_GIRL),插入一些测试数据。 create table T_GIRL ( id char(4) not null, -- 编号 name varchar2(10) not null, -- 姓名 yz varchar2(10) null, -- 颜值 sc varchar2(10) null, -- 身材 weight number(4,1) not null, -- 体重 height number(3) not null, -- 身高 birthday date not null, -- 出生时间 memo varchar2(1000) null -- 备注 ); insert into T_GIRL(id,name,yz,birthday,sc,weight,height,memo) values('0101','西施','漂亮',to_date('2000-01-01 01:12

C#中字符和字符串总结

允我心安 提交于 2020-03-14 15:44:08
Char类是C#提供的字符类型,String是C#提供的字符串类型。 字符:   Char类在C#中表示一个Unicode字符。   Char类只定义一个Unicode字符。   Char类常用的方法及说明如下: 方 法 说 明 IsControl 指示指定的Unicode字符是否属于控制字符类别 IsDigit 指示某个Unicode字符是否属于十进制数字类别 IsHighSurrogate 指示指定的Char对象是否为高代理项 IsLetter 指示某个Unicode 字符是否属于字母类别 IsLetterOrDigit 指示某个Unicode 字符是属于字母类别还是属于十进制数字类别 IsLower 指示某个Unicode 字符是否属于小写字母类别 IsLowSurrogate 指示指定的Char对象是否为低代理项 IsNumber 指示某个Unicode 字符是否属于数字类别 IsPunctuation 指示某个Unicode 字符是否属于标点符号类别 IsSeparator 指示某个Unicode 字符是否属于分隔符类别 IsSurrogate 指示某个Unicode字符是否属于代理项字符类别 IsSurrogatePair 指示两个指定的Char对象是否形成代理项对 IsSymbol 指示某个Unicode 字符是否属于符号字符类别 IsUpper

openresty cjson转义斜线/为\\/

天涯浪子 提交于 2020-03-13 22:00:51
现象如下: print(cjson.encode({url="http://www.baidu.com"})); {"url":"http:\/\/www.biau.com"} 分析发现cjson实现时对/进行转义,json规范里约定/可以转义也可以不转义。解决办法修改cjson源码,目录在openresty-x.x.x.x/bundle/lua-cjson-y.y.y.y/ 修改文件:lua_cjson.c 搜索char2escape NULL , NULL , NULL , NULL , NULL , NULL , NULL , "\\/" , 最后一个字符替换为: NULL , NULL , NULL , NULL , NULL , NULL , NULL , NULL, 重新编译openresty解决。 来源: oschina 链接: https://my.oschina.net/osgit/blog/3193624