草庐IT

Preg_Match

全部标签

用于分割字符串的 PHP preg_match_all 正则表达式

任何人都可以帮助完成我的正则表达式吗?我的字符串格式如下:{p:19}Ja?DumöchtestzurKönigin?{p:20}Hmm...DubistgekommenumdenTitelKriegerinzuerhalten?Verstehe.DasistganzschöntapferfürsoeinejungeDame.DieKöniginwirdsicherauchsehrüberraschtsein.{t:19}Bittesehr,gehdirekthinein.{t:20}TreibeDichhiernichtherum,wennDuhiernichtszusuchenha

php安全问题

这是漫长的一天,但我似乎无法在自己的脑海中选择哪个更好,或者我是否应该同时使用两者。基本上我应该使用什么来清理用户输入的值。它是htmlentities还是preg_match函数?然后,如果该值进入sql查询,我将使用mysql_real_escape_string函数,但只有在我将其更改为准备好的语句之后,我才能删除它。或者同时使用htmlentities和preg_match是个好主意吗? 最佳答案 你为什么不直接在你的previousquestion中问这个?在进行任何转义之前使用preg_match,以确保数据符合您期望的

php - preg_match 或运算符

我的下面的代码产生了一个错误,未知修改的“|”...我正在尝试将它用作OR运算符。正确运行这段代码的方法是什么?$p="(\w+)|(\()|(\))|(\,)";$s="sum(blue,paper,green(yellow,4,toast)))";preg_match($p,$s,$matches);print_r($matches);编辑好吧,我稍微改了一下...~(\w+|\(|\)|,)~现在……问题来了:我需要获取该字符串并将其拆分成这样的数组:array("sum","(","blue","paper","green","("...等);有人可以帮我做吗?当我运行上面的表

php - 与 PHP 的 preg_match() 一起使用的正则表达式来查找换行符

我对正则表达式相当陌生/生疏。我正在从textarea元素中收集一段文本,我想检查填充它的人是否使用了任何段落等等。我正在使用以下内容,我知道这是错误的。preg_match('/\r\n|\n|\r/',$_GET['text']); 最佳答案 你的正则表达式没有错。但是为了检测段落,您需要寻找两个连续的换行符:preg_match('/(\r?\n){2}/'回车\r是可选的,我只检查\n换行符,因为大多数平台将其视为换行符。显然,如果提交的文本只是没有段落或换行符的单行,则此检查将失败。或者,您也可以探测两个换行符,中间有任何

php - 使用 php preg_match_all 和 cURL 从多个页面抓取/下载图像

所以我想从另一个网站抓取一些图片,问题是每张图片都在不同的页面上IE:id/1,id/2,id/3等等到目前为止,我有下面的代码可以从给定的单个URL中获取图像:$returned_content=get_data('http://somedomain.com/id/1/');但需要将上面的行变成一个数组(我猜),这样它会从第1页抓取图像,然后继续抓取第2页上的下一张图像,然后自动抓取第3页等functionget_data($url){$ch=curl_init();$timeout=5;curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($c

PHP:preg_replace 使用反向引用替换缩写

我想在PHP中使用preg_replace对以下字符串执行字符替换:DieserTextenthältdiverseAkürzungenwiez.B.,d.h.,u.a.oderm.w.H.输出应该是这样的:DieserTextenthältdiverseAbkürzungenwiez.\,B.,d.\,h.,u.\,a.oderm.\,w.\,H.目前我正在使用这段代码:有没有办法结合这两个正则表达式?当我使用以下表达式时,我无法使用匹配的字符:/([a-z]\.){2,}/i非常感谢任何帮助。 最佳答案 想法是找到所有单个字母+

php - 如何从 preg_split 结果中删除空数组?

举个例子,我写了很多简单的正则表达式:php>var_dump(preg_split('/[:reg\s{}]+/',':reg{/^[a-zA-Z]*$/}'));array(3){[0]=>string(0)""[1]=>string(13)"/^[a-zA-Z]*$/"[2]=>string(0)""}我想删除空数组[0]=>string(0)""例如,结果应该是:php>var_dump(preg_split('????',':reg{/^[a-zA-Z]*$/}'));array(3){[0]=>string(13)"/^[a-zA-Z]*$/"}我知道删除空数组时array

preg_replace 期间的 PHP 段错误

我正在使用Magento并在管理员回滚数据库期间遇到PHP段错误。我做了调查,发现原因是这样的:preg_replace("/'(\\'|\\\\{2}|[^'])*'/",'',$sql);$sql字符串足够大,我正在附加它。https://drive.google.com/file/d/0B9UbKYbywcABOTRSVG5KRl9La0k/edit?usp=sharing您可以使用这样的脚本来重现问题:可能有人知道这个问题,可以帮我解决吗?附言直接导致问题的类是抽象类Zend_Db_Statement204:208 最佳答案

php - preg_replace 正则表达式不输出任何内容

$str='{author}{content}';$pattern='/\{([a-z_0-9]+)\}/i';$subst=array('author'=>'Mr.Google','id'=>'1239124587123','content'=>'Thisissomesimpletext');$str=preg_replace($pattern,$subst['$1'],$str);echo$str;{text}的每个实例结果都是“”是我在捕获组上做错了什么吗?我用preg_match_all完成了此操作,它返回为{author}和author这是这里的问题吗?

php - Laravel 5.2 登录总是抛出 "These credentials do not match our records."

我正在尝试使用Laravel5.2实现身份验证。我已经处理这个问题好几个小时了,但我总是收到“这些凭证与我们的记录不符”的提示。尝试登录时。我试过弄乱路由、调整用户表中的密码列大小、尝试自定义登录验证器等。就是无法让它工作。这就是我通过迁移创建用户表的方式:注意事项:我必须在学校项目中使用原始语句。Laravel建议密码字段需要60个字符(已经尝试过100个)Laravel需要100个字符的remember_token列编辑:数据库和用户表已成功创建,用户数据已在注册时保存。代码:DB::statement("CREATETABLEusers(idINTPRIMARYKEYAUTO_I