在我的Web安全学习的开始需要对ASP的代码有一定的熟悉程度但是在查看源码的时候经常性的看到双引号,单引号以及&号.并且对他们的用法经常产生疑惑的地方,这里是我搜集的一些理解和感悟,以期对ASP的学习有所帮助~

一.双引号""

ASP中处在双引号中的可以是任意的字符,字符串,HTML代码.

比如  <%response.write("cnbruce here")%><hr>

<%response.write("<b>cnbruece here</b>")%>

产生的结果分别是:默认字体和加粗文字“cnbruce here”

下面深入一点如果我要在输出的页面文字上加一点颜色效果怎么办呢?

1.一般文字颜色这样写:<font color="#0000ff"></font>

2.response.write写法是这样的:response.write("输入显示内容")

3.如果将上述的1和2放在一起的话,两对双引号势必会形成嵌套

4.调试结果不容乐观,因为color的前引号和write的前引号形成匹配,内容为<font color=;同样color的后引号也就和write的后引号匹配了,内容为:>cnbruce</font>。最终结果是:中间的 #0000ff 被孤单了。

5.所以为了结果正确,你可以将 #0000ff 当成字符串放在双引号里面,然后该字符串与前字符串<font color=和后字符串>cnbruce</font>中间的连接就采用&号

最后结果如下:

<%response.write("<font color=" &" #0000ff" & ">cnbruce</font>")%>

   二.单引号''

正如我们学习语文所理解的一样,继续放在双引号当中的引号可以采用单引号。

对于上述的描述我们也可以将双引号变成单引号来进行改写:

response.write("<font color="#0000ff">cnbruce</font>")

中的#0000ff就可以将其双引号变为单引号:
response.write("<font color='#0000ff'>cnbruce</font>"),这样执行同样正确。

   三.连接字符&号

在ASP中&符号是用来来进行连接的,包括字符串-字符串,字符串-变量,变量-变量等混合连接

例如:

      <%

     mycolor="#0000ff" response.write("<font color=' "&mycolor&" '>"&"cnbruce"&"</font>")

     %>

总结完这些以后我们来看一些值得注意的地方:

上面的那个语句里面在单引号里面有引用了双引号,那么是不是跟上面我们所说的双引号里面可以放单引号而有所模糊了呢其实不是的,我们继续看

1.我们自己定义了一个变量mycolor,按照原则变量放在response.write里面是不需要加双引号的

加了双引号就表示字符串而非变量了

2.所以response.write如果要输出变量可以直接写成:response.write(mycolor)

3.但是如果我们的变量一定要放在双引号里面怎么办呢

4.这个时候我们就有了这种关键的写法:将ASP变量继续添加左右的“&符号,就可以放在双引号里面了

例子是:response.write(" "&mycolor&" ")其实其内在就是一前一个空字符串连接mycolor变量

在后面连接一个字符串而已。

最后再给出一个终极例子以作结尾:

<%

mycolor="#0000ff"

response.write("<font color=' "&mycolor&" '> " & mycolor &"</font>") 

这句话包含了字符创,变量以及变量在双引号里面的应用。

%>

在ASP学习当中对双引号,单引号以及&符号的理解的更多相关文章

  1. ASP中双引号单引号和&连接符使用技巧

    ASP中双引号单引号和&连接符使用技巧 一.ASP中处在双引号中的可以是任意的字符.字符串,HTML代码 1.<%response.write ("I am here" ...

  2. shell 脚本中双引号 单引号 反引号 的区别

    转自:http://blog.csdn.net/iamlaosong/article/details/54728393 最近要编个shell脚本处理数据,需要检测数据文件是否存在,文件名中包含日期,所 ...

  3. SQL视图优化改写为存储过程遇到 双引号 单引号问题

    核心在于拼接SQL字符串中遇到中文双引号问题:   可以使用系统函数 替换掉set @pageStr =   replace(@queryStr,'"','''')  不过更推荐 使用两个单 ...

  4. Python字符串符号:双引号/单引号用法注解。

    众所周知python中单引号和双引号常常被我们所使用,例如print.input等等. 但是对于打印输出所引导的字符串大多都是用双引号的形式来做,"Hello,python!",而 ...

  5. sed 双引号 单引号的区别

    a="abcd" b="abc" sed -i '/$a/ s/$/$b/' test.a 我想在test.a中匹配以”abcd“开头的行,然后在行尾加入”ab ...

  6. Ubuntu下键盘输入错乱问题,输入双引号输出的是@符号,输入#号输出的是未知语言的字符

    装完搜狗后,键盘开始出现混乱,切换到英文输入法,输入双引号输出的是@符号,输入#号输出的是未知语言的字符. 网上有的说在 system - keyboard - Input Source 下看看是否是 ...

  7. python--基础学习(三)字符串单引号、双引号、三引号

    1.基本认识 单引号字符串:'python' 双引号字符串:"python" 三引号字符串:'''python'''(三单引号),"""python& ...

  8. (转)解决fasterxml中string字符串转对象json格式错误问题(无引号 单引号问题)

    原文地址:解决fasterxml中string字符串转对象json格式错误问题 com.fasterxml.jackson.databind.ObjectMapper mapper = new com ...

  9. Python3基础 print \" 输出单引号与双引号

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

随机推荐

  1. Laravel大型项目系列教程(四)显示文章列表和用户修改文章

    小编心语:不知不觉已经第四部分了,非常感谢很多人给小编提的意见,改了很多bug,希望以后能继续帮小编找找茬~小编也不希望误导大家~这一节,主要讲的 是如何显示文章列表和让用户修改文章,小编预告一下(一 ...

  2. nginx实现单服务代理多域名

    通过一台nginx服务器代理多个域名进行跳转,原理很简单,重点在玩法!适用于公司处理域名紧急备案问题. 域名: www.hx123.com www.hx456.com nginx服务器: ginx.c ...

  3. SQLite学习笔记(十一)&&虚拟机原理

    前言      我们知道任何一种关系型数据库管理系统都支持SQL(Structured Query Language),相对于文件管理系统,用户不用关心数据在数据库内部如何存取,也不需要知道底层的存储 ...

  4. mybatis-generator-gui--一个mybatis代码自动生成界面工具

    mybatis-generator-gui是什么 介绍mybatis-generator-gui之前,有必要介绍一下什么是mybatis generator(熟悉的同学可以跳过这一节).我们都知道,通 ...

  5. Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验

    Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...

  6. 《HeadFirst SQL》笔记

    规范化 0 约束 1 原子性 2 第一范式 1NF 3 数据模式 4 依赖 5 联接查询 6 交叉联接(AKA 笛卡尔联接,叉积) 7 内联接 8 子查询 9 外联接 10 自联接 11 集合 12 ...

  7. python学习7

    1.函数作为返回值 eg: 调用执行结果如下: 在函数lazy_sum中又定义了函数sum,并且,内部函数sum可以引用外部函数lazy_sum的参数和局部变量(eg:args),当lazy_sum返 ...

  8. AC日记——最小的N个和 codevs 1245

    1245 最小的N个和  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 有两个长度为 N ...

  9. float4与half4数据类型

    连续4个32位float类型数的向量 HLSL数据类型 GPU是以四维向量为基本单位来计算的.4个浮点数所组成的float4向量是GPU内置的最基本类型.使用GPU对两个float4向量进行计算,与C ...

  10. hdu----(1849)Rabbit and Grass(简单的尼姆博弈)

    Rabbit and Grass Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...