escaping 相关问题

转义是对字符或字符集应用替代含义的过程。

在 grep 中转义 Shebang

在 shell 脚本中,我试图找出另一个文件是否是 shell 脚本。我通过 greping shebang 线来做到这一点。但我的 grep 语句不起作用: if [[ $($(cat $file) | grep '^#! /bin'...

回答 2 投票 0

使用 JAXB Marshaller 处理 XML 转义字符(例如引号)

我需要使用 JAXB Marshaller(JAXB 版本 2.2)将 XML java 对象序列化为 XML 文件。现在在 xml 对象中,我有一个包含 String 值的标签,如下所示: ”<"tagA> **”<...

回答 5 投票 0

防止原始 SQL 函数被 CodeIgniter 的 where() 查询构建方法自动引用

我的查询中有三个 where 条件,我希望将它们全部合并到一个关联数组中并输入到 CodeIgniter 的 where() 方法。 $this->db->where(array('id' => 5, 'name' => $

回答 2 投票 0

在不破坏 JSON 的情况下转义 JSON 字符串的值

我试图从 JSON 字符串中转义值并删除后端的 HTML 字符(如 等)。我读过 GSON 通常会自己这样做,但就我而言,并不是因为我很可怕......</desc> <question vote="2"> <p>我试图从 JSON 字符串中转义值并删除后端的 HTML 字符(如 <pre><code>&lt;script&gt;</code></pre> 等)。我读过 GSON 通常会自行执行此操作,但就我而言,不是因为我直接通过“fromJson”填充 javaobject。</p> <p>如果我只是使用 commons 库并使用 escapeString 或 escapeJson 进行转义,它也会转义双引号 (") 并会中断 GSON 中的 fromJson 函数。</p> <p>我使用以下功能来填充对象:</p> <pre><code>Gson gson = new GsonBuilder().setDateFormat(&#34;yyyy-MM-dd&#39;T&#39;HH:mm:ss.SSS&#39;Z&#39;&#34;).create(); DataObject dObject = gson.fromJson(jsonString, DataObject.class); </code></pre> <p>json 字符串如下所示(动态):</p> <pre><code>{&#34;dynamic&#34;:[{&#34;id&#34;:1,&#34;constrain&#34;:&#34;1&#34;,&#34;value_text&#34;:&#34;test&#34;},{&#34;id&#34;:11,&#34;constrain&#34;:&#34;1&#34;,&#34;value_boolean&#34;:1},],&#34;name&#34;:&#34;Xzzz&#34;,&#34;prename&#34;:&#34;XY&#34;,&#34;language&#34;:&#34;e&#34;,&#34;email&#34;:&#34;<a href="/cdn-cgi/l/email-protection" data-cfemail="dea69ea6a7f0bdb1b3">[email protected]</a>&#34;} </code></pre> <p>我只是想转义 json 字符串的值(就像当有人输入名称 <pre><code>&lt;script&gt;;</code></pre> 时,它应该转义为 <pre><code>&amp;lt;script&amp;gt;</code></pre>)</p> <p>有人知道我该如何解决这个问题吗?</p> <p>提前致谢</p> </question> <answer tick="true" vote="2"> <p>我的猜测是您正在尝试清理用户的输入以防止跨站点脚本编写。 您可能想要做的是使用白名单来允许输入。一旦输入通过,您就可以将其发送到后端。</p> <p>这是一个很好的参考</p> <p><a href="http://jsoup.org/cookbook/cleaning-html/whitelist-sanitizer" rel="nofollow">http://jsoup.org/cookbook/cleaning-html/whitelist-sanitizer</a></p> <p>总结起来就是这样:</p> <pre><code>String unsafe = &#34;&lt;p&gt;&lt;a href=&#39;http://example.com/&#39; onclick=&#39;stealCookies()&#39;&gt;Link&lt;/a&gt;&lt;/p&gt;&#34;; String safe = Jsoup.clean(unsafe, Whitelist.basic()); // now: &lt;p&gt;&lt;a href=&#34;http://example.com/&#34; rel=&#34;nofollow&#34;&gt;Link&lt;/a&gt;&lt;/p&gt; </code></pre> </answer> <answer tick="false" vote="1"> <p>如果 Json 的内容是正确的 json,则不必担心 html 编码。任何 json 库都不会自动对属性进行 html 编码。 如果您需要编码为 html,可以使用此库: <a href="http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForHTML(java.lang.String)" rel="nofollow">http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForHTML(java.lang.字符串)</a></p> <p>如果您想对 html 属性分配进行编码(也可能是这种情况),您应该使用以下代码: <a href="http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForHTMLAttribute(java.lang.String)" rel="nofollow">http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForHTMLAttribute(java.lang.String)</a></p> <p>我的建议是,在应用任何这种编码之后:<a href="http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForJavaScript(java.lang.String)" rel="nofollow">http://owasp-esapi-java.googlecode.com/svn/trunk_doc/latest/org/owasp/esapi/Encoder.html#encodeForJavaScript(java.lang.字符串)</a>(如果您的图书馆不提供此功能)。</p> <p>一般来说,在编码时,你必须知道浏览器中的解析器(Javascript/json/html)如何运行以及运行顺序。</p> </answer> </body></html>

回答 0 投票 0

如何告诉oracle SQL正则表达式中的反斜杠不是转义符号

查询从双输出 _+_4_ 中选择 regexp_replace('Wd+Wd4Wd', '[\W\d]+', '_') ,这意味着它将反斜杠视为转义字符并替换 W 和 d 而不是+ 和 4。如果 \W 和 ...

回答 2 投票 0

如何在 bash 中转义通配符/星号字符?

例如: 我$ FOO =“酒吧*酒吧” 我$回显$FOO BAR 文件1 文件2 文件3 文件4 BAR 并使用 \ 转义字符: me$ FOO="酒吧 \* 酒吧" 我$回声$FOO 酒吧\*酒吧 我显然在做一些愚蠢的事情......

回答 7 投票 0

HttpResponseMessage 文本/纯内容用引号括起来并转义

我创建了一个返回 TOML 配置文件的 webapi,当我查看 swagger/postman 中的输出时,输出正如我所期望的: [系统.“测试2”] 名称=“测试名称” 组织...

回答 1 投票 0

将逗号分隔的字符串传递到 CodeIgniter SELECT query() 调用的 IN 条件时,引号会自动转义

当我使用上面的 $id 值从 mysql 表中获取记录时,我通过控制器将变量值 $id="'10','11',12'" 从视图传递到模型: $query = $this->db->que...

回答 2 投票 0

CodeIgniter select() 方法中的自动引用正在破坏 SELECT 子句

我有这样的疑问: $this->db->select(' COUNT(tran_ID) AS 计数, 月份(天)>=4 的情况 THEN concat(年(天), "-", 年(天)+1) 别的 ...

回答 1 投票 0

使用 false 作为 CodeIgniter 的 select() 方法的第二个参数有什么作用?

我无法理解以下内容: $this->db->select('1', FALSE); 有人可以解释一下它的作用以及何时使用它吗?

回答 1 投票 0

Clang:解释 .incbin 中的转义序列是错误还是功能?

当前 Clang 解释 .incbin 中的转义序列(例如 \x)。 这是错误还是功能? 后果之一是包含 \ 的 Windows 路径需要包含 \ 以防止解释 esc...

回答 1 投票 0

如何为 HTTP 标头编码 UTF8 文件名? (Python、Django)

我对 HTTP 标头有问题,它们以 ASCII 编码,我想提供一个用于下载名称可以是非 ASCII 的文件的视图。 响应['内容处置'] = '附件;文件名...

回答 7 投票 0

导入时出现平面文件问题

我有一个要求,必须将数据从 SQL Server 卸载到管道分隔的平面文件。问题是我们有一列,其值通常是 ke 上出现的所有特殊字符...

回答 1 投票 0

Windows cmd:无法转义文件名中带有空格的百分比变量?

在Windows命令行中,如何正确转义这样的文件路径?文件名中包含空格、百分比和变量(例如 %cd% 和 %errorlevel%)而不扩展变量的文件?这是吗

回答 1 投票 0

如何转义 Solr 字段名称中“fl”参数的特殊字符(例如冒号、斜杠、引号...)?

我在 Solr 模式中使用冒号字符命名字段名称。我们需要使用命名空间字符,因为我们有数百个来自不同来源的字段。使用下划线不是

回答 2 投票 0

为什么 if 语句中反斜杠和竖线字符不匹配?

我有这个字符串: (335, '安舒茨 1710/1712', ' 我有这个字符串: (335, 'Anschutz 1710/1712', '<p>\r\n <a href=\"" onclick=\"window.open(this.href, \'\', \'resizable=no,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no\'); return false;\"><img alt=\"\" src=\"\" style=\"width: 780px; height: 659px;\" /></a></p>\r\n', 1, 17, '', '', '', '', 0, '', 0, 0, 88, '', 0), 我一直在尝试反序列化它,但我需要删除前面带有 \ 的字符。所以我尝试做一个简单的 if(character == '\\') 来匹配它,但是这只捕获了 \' 之后的第二个 this.href,这意味着它以某种方式跳过了 5 个反斜杠,然后突然停在了这个。 这是我编写的用于反序列化字符串的代码: public static string[] RipASQLQuery(string data) { // Remove the SQL stuff var str = data.Replace("(", ""); str = str.Replace(")", ""); str = str.Replace(";", ""); var list = new List<string>(); int i = 0; bool inSubstring = false; bool escaped = false; foreach (var character in str.ToCharArray()) { if (list.Count < i + 1) { list.Add(""); } if (escaped) { // Ignore this character Console.WriteLine("Escaped " + character); escaped = false; continue; } if (inSubstring) { if (character == '\'') inSubstring = false; list[i] += character; continue; } if(character == ('\\') { Console.WriteLine("Backslash!!"); escaped = true; continue; } else if (character == '\'') { inSubstring = true; list[i] += character; continue; } else if(character == ',') { i++; continue; } else { list[i] += character; } } return list.ToArray(); 我尝试str.Replace("\\", "|");尝试看看是否可以匹配不同的字符,这成功地将字符串更改为: 335, 'Anschutz 1710/1712', '<p>|r|n <a href=|"|" onclick=|"window.open(this.href, |'|', |'resizable=no,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=no,dependent=no|' return false|"><img alt=|"|" src=|"|" style=|"width: 780px height: 659px|" /></a></p>|r|n', 1, 17, '', '', '', '', 0, '', 0, 0, 88, '', 0, 但它仍然在 |' 之后的第二个 this.href 处被捕获。我很困惑。 最简单的方法: str = str.Replace(@"\", ""); 或者 str = str.Replace(@"\", String.Empty);

回答 1 投票 0

从 PyCharm 中的运行配置传递 JSON 作为参数

有人可以告诉我如何从运行配置的参数字段传递 JSON 作为脚本参数吗? 我正在尝试传递这个 JSON: {“光束”:5,“max_len_a”:1.2,&...

回答 2 投票 0

在bigquery的bq命令行工具中转义引号字符以进行查询

我也尝试使用 bq 命令行自动生成新的每日表 bq 查询 \ --destination_table= \ --allow_large_results \ --noflatten_结果 \ '<...

回答 3 投票 0

对字符串 JSON 进行转义,以便保留文本内的转义

有一个转义字符串 JSON,里面有一些转义字符(“Bob”): {\"id\":\"1\",\"name\":\"猫的名字为\"Bob\"} 有必要...

回答 1 投票 0

为什么“\”在PHP中存储为字符串时会出错?

我的字符串看起来像: $完整路径 = $dirName 。 “/”。 $文件; 如果我用 \ 替换 / ,则会出现错误: 需要标识符或变量 我想以后一种方式存储。如何覆盖任何...

回答 4 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.