sanitization 相关问题

数据清理以防止代码注入

从字符串中删除两个黑名单字符

地址:12345 West Palm Rd., #7B Daytona, FL 我正在尝试删除“.” 《Rd.》中的角色以及“#7B”中的“#”字符。但是,我希望删除这些字符...

回答 6 投票 0

用下划线替换一个或多个单词字符[重复]

我只需要允许字母、数字和下划线(_)。 其他任何内容都应替换为单个下划线符号 (_)。 我的正则表达式模式有什么问题? $val = 'dasd Wsd 23 /*~`'; $k =

回答 2 投票 0

用下划线替换非字母数字字符

这是我目前正在使用的: $replace = array(" ", ".", ",", "'", "@"); $newString = str_replace($replace, "_", $join); $join = &qu...

回答 3 投票 0

删除双引号内的所有逗号

我有一个字符串,例如:“x”,“x,y”,“x,y,h”。 我只想删除双引号内的逗号并将字符串返回为: “x”、“xy”、“...

回答 5 投票 0

从“Y-m-d\TH:i”格式的日期时间值中删除所有非数字字符

我有一个包含一堆数据的数组。其中一个索引为用户提供了一串数字,稍后我将使用 JavaScript 将其转换为可读格式。字符串如下: $dueDa...

回答 2 投票 0

获取@符号后面的所有浮点数

我有随机变量,例如: 脱衣@ 489.000 地带 1 @ 489.000 地带 2 @ 589.000 我需要输出只是 [anything] @ 之后的数字来给我: 489.000 489.000 589.000 如何实现这一点...

回答 2 投票 0

替换黑名单单词,即使匹配字符之间有多余字符

我正在使用 preg_replace(),我需要一些帮助。我已经尝试这样做有一段时间了,是时候面对事实了:我真的不擅长正则表达式。我什至不确定什么可以,什么不可以

回答 3 投票 0

删除从左方括号标签到右方括号标签的部分文本

我正在解析一些文本,如下所示: 一些文字。一些文字。一些文字。一些 文本。一些文字。一些文字。一些文字。 一些文字。一些文字。一些文字。一些 文本。一些文字。一些文字。一些...

回答 3 投票 0

从 HTML 文档中删除具有特定类的 div 元素

我正在尝试从字符串中删除以下模式: 内容1 其中“Content 1”可能因字符串而异。 以下似乎不起作用: $

回答 2 投票 0

从写得不好的 XML 字符串中找到的所有结束标签中删除任何标签属性

我正在尝试使用 preg_replace() 来清理写得不好的 XML。 $x = '更多测试测试数据&...

回答 6 投票 0

如果其唯一的子级是 <p> 标签,则删除父 <img> 标签

我有一些 HTML,其中 标签周围有不需要的 标签。 我想删除包裹 标签的父 标签。 从本质上讲,Wordpress 很烦人。如果很容易的话... 我有一些 HTML,其中 <p> 标签周围有不需要的 <img> 标签。 我想删除包裹 <p> 标签的父 <img> 标签。 Wordpress 本质上很烦人。如果使用 str_replace() 或其他方法更容易,请告诉我。但我已经尝试过了。到目前为止失败了...... 输入HTML <p>This will serve as a debug page.</p> <p><img src="http://mattmueller.me/blog/wp-content/uploads/2009/12/threadless.png" alt="Threadless" title="Threadless" width="650" height="150" class="alignnone size-full wp-image-73" /></p> 所需输出 HTML: <p>This will serve as a debug page.</p> <img src="http://mattmueller.me/blog/wp-content/uploads/2009/12/threadless.png" alt="Threadless" title="Threadless" width="650" height="150" class="alignnone size-full wp-image-73" /> 这是一个很棒的工具,希望可以帮助您: http://www.gskinner.com/RegExr/ $x = preg_replace('/<p[^>]*>(<img[^>]*>)<\/p[^>]*>/', '$1', $x); 其中 $x 是您的内容 s/<p>(<img.*?\/>)<\/p>/$1/g

回答 3 投票 0

从 preg_match() 更改为 preg_replace() 并删除匹配的 <head> 内容

我知道在 HTML 上使用正则表达式不是首选,但我仍然很困惑为什么这不起作用: 我正在尝试从文档中删除“头部”。 这是文档: 我知道在 HTML 上使用正则表达式不是首选,但我仍然很困惑为什么这不起作用: 我正在尝试从文档中删除“头部”。 这是文档: <html> <head> <!-- a comment within the head --> </head> <body> stuff in the body </body> </html> 我的代码: $matches = array(); $result = preg_match ('/(?:<head[^>]*>)(.*?)(<\/head>)/is', $contents, $matches); var_dump ($matches); 这实际上不起作用。 这是我看到的输出: array(3) { [0]=> string(60) " " [1]=> string(47) " " [2]=> string(7) "" } 但是,如果我将 HTML 文档调整为没有注释 你的正则表达式看起来不错,但是提取了<head>;你想移除头部。尝试使用 preg_replace 代替: $without_head = preg_replace ('/(?:<head[^>]*>)(.*?)(<\/head>)/is', '', $contents); 您的脚本工作正常,但由于转储中的 HTML,它无法正确显示(您可以通过 var_dump 输出中的长度来判断)。 尝试: $result = preg_match ('/(?:<head[^>]*>)(.*?)(<\/head>)/is', $contents, $matches); ob_start(); // Capture the result of var_dump var_dump ($matches); echo htmlentities(ob_get_clean()); // Escape HTML in the dump 此外,如前所述,您需要使用 preg_replace 将火柴替换为 '' 才能真正移除头部。 php > $str=<<<EOS <<< > <head> <<< > <!-- <<< > a comment within the head <<< > --> <<< > </head> <<< > EOS; php > $r=preg_match('/(?:<head[^>]*>)(.*?)(<\/head>)/is',$str,$matches); php > var_dump($r); int(1) php > var_dump($matches); array(3) { [0]=> string(63) "<head> <!-- a comment within the head --> </head>" [1]=> string(50) " <!-- a comment within the head --> " [2]=> string(7) "</head>" } 您的意思是使用 preg_replace 吗? php > $r=preg_replace('/(?:<head[^>]*>)(.*?)(<\/head>)/is','',$str); php > var_dump($r); string(0) ""

回答 3 投票 0

删除文本中特定的方括号占位符:“[caption ...]”

需要正则表达式方面的帮助。我有一大串 HTML,需要删除这样的标签 [标题id =“attachment_24612”对齐=“alignnone”宽度=“900”] 每个标签都开始...

回答 2 投票 0

获取<a>标签的href值的查询字符串中特定键的值

我正在尝试在 PHP 中编写一个正则表达式,如下所示 文字 它只会返回我&qu...

回答 2 投票 0

解析 <a> 标签的 href 值并从 URL 的查询字符串中删除不需要的值

我正在尝试在 PHP 中编写一个正则表达式,如下所示 文字 它只会返回我&qu...

回答 2 投票 0

删除非字母以及前面没有指定字符或位于字符串开头的字母

我在将一些正则表达式从 preg_match_all() 中使用转换为在 preg_replace() 中使用时遇到了一些困难。 基本上,仅通过正则表达式,我想匹配大写字符......

回答 2 投票 0

获取字符串开头直到括号[重复]

我正在尝试清理 API 响应中包含电视频道信息的文本。 BBC1(现在:BBC 新闻 下一个:BBC 新闻)) 我只想要 BBC1;之后就什么都没有了。 我试过这个: $名称 =

回答 2 投票 0

过滤分隔的电话号码字符串

我想过滤类似2338034444232、07065716184、0816272721的内容。 电话号码用逗号分隔,我希望我的最终产品类似于 '2338034444232,2338034444232,2338034444232`。

回答 1 投票 0

仅保留指定字符的一个连续重复实例

我有一根绳子!!测试或!!!!! 测试。 我想要做的是使用 preg_replace() 并且只保留第一个!但先保留此后的其余文本!那不是一个! !!测试 -> ...

回答 2 投票 0

从 URL 路径字符串中删除语言说明符[重复]

我正在寻找可以帮助我处理以下内容的正则表达式的人。 我有这个代码:(已更新) 我正在寻找可以帮助我处理以下内容的正则表达式的人。 我有这个代码:(已更新) <?php $sitename = "http://" .$_SERVER["SERVER_NAME"]; $sitename = mysql_real_escape_string($sitename); $language = "da"; $language = mysql_real_escape_string($language); $pagename = $_SERVER["PHP_SELF"]; $pagename = mysql_real_escape_string($pagename); $language1 = preg_replace("/$language/", "$1", "$pagename"); ?> 我需要一个正则表达式来从 URL(站点名称)中删除语言 - 现在可以了 如何转义特殊字符? 上面示例的结果让我留下了 //index.asp 而不是 /index.asp。 基本上,我想要做的是从 URL 中删除一个常量 (/da): 网址将如下所示 http://www.example.com/da/ 或 http://www.example.com/da/folder/folder/folder/page.asp 我只需要把 URL 中的 da 去掉即可。 我将如何在 PHP 中执行此操作? 好吧,我似乎已经弄清楚了: <?php $sitename = "http://" .$_SERVER["SERVER_NAME"]; $sitename = mysql_real_escape_string($sitename); $language = "\/da"; $pagename = $_SERVER["PHP_SELF"]; $pagename = mysql_real_escape_string($pagename); $language1 = preg_replace("/$language/", "$1", "$pagename"); ?> 我只需要删除这一行: $language = mysql_real_escape_string($language); 替换: $re = '/(?:\w+:\/\/[\w][\w.]+\/)(\w+)\//ui'; or this $re = '^(?:.*)\/(\w{2})\//ui'; $text = http://www.domain.com/ru/ preg_replace($re, 'ru', $text); --> *http://www.domain.com/ru/* 搜索: $re = '/(?<domain>\w+:\/\/[\w][\w.]+\/)(?<lang>\w+)\//ui'; or this $re = '^(?:.*)\/(?<lang>\w{2})\//ui'; $text = http://www.domain.com/ru/ preg_match($re, $text, $aMatches); --> Array ( [0] => http://www.domain.com/da/ [domain] => http://www.domain.com/ [1] => http://www.domain.com/ [lang] => da [2] => da ) 您应该发布一些您想要解析的真实字符串(这个问题对于您发布的代码没有什么意义,因为您已经在 $language 变量中拥有数据)。无论如何,在 PHP 中,您可以使用 parse_url() 将 URL 拆分为其组件,然后: substr(..., -2) 提取尾随字母(如果已固定) explode('/', ...) 和 end() 获取最后一个片段 具体细节取决于您的数据。 顺便说一句,你的 JavaScript 代码将会把 /data/en 变成 /sitenameta/en :-?

回答 2 投票 0

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