PHP preg_Match含义和问题 [英] PHP preg_match meaning and issue

查看:56
本文介绍了PHP preg_Match含义和问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

目前我有以下代码:

<?php
if (isset($_GET['id'])) {
$itemid = $_GET['id'];
$search = "$itemid";
$query = ucwords($search);
$string = file_get_contents('http://clubpenguincheatsnow.com/tools/newitemdatabase/items.php');
if($itemid=="")
{
echo "Please fill out the form.";
}
else
{
$string = explode('<br>',$string);
foreach($string as $row)
{
preg_match('/^(D+)s=s(d+)s=s(D+)s=s(d+)/', trim($row), $matches);
if(strstr($matches[1], $query))
{
echo "<a href='http://clubpenguincheatsnow.com/tools/newitemdatabase/info.php?id=$matches[2]'>";
echo $matches[1];
echo "</a><br>";
}
}
if($matches[1]=="")
{
echo "Item does not exist!";
}
}
}
else {
echo "Item does not exist!";
}
?>

我想知道的是这个部分是什么意思?preg_match('/^(D+)s=s(d+)s=s(D+)s=s(d+)/', trim($row), $matches);主要是/^(D+)s=s(d+)s=s(D+)s=s(d+)/部分是我想知道的。

此外,我一直有一个问题是,我如何才能允许它也使用数字?因为我有另一个包含Data(http://clubpenguincheatsnow.com/tools/newitemdatabase/items.php)的文件,它希望它获取所有内容,甚至包括带有数字的名称。

我该怎么做呢?请帮帮我!如有任何帮助,将不胜感激!

推荐答案

这是一个正则表达式。

"^"匹配字符串的开头。

"D"匹配任何不是数字的字符。

"d"可匹配任何数字。

"%s"与任何空格匹配。

加号表示前一个字符可以多次出现。

所以基本上它将匹配文件中的所有行,最后一个逗号除外。

Blue = 1 = No = 20

该行将与正则表达式匹配。

关于您的最后一个问题要允许使用数字,请使用以下命令:

/^(.+)s=s(d+)s=s(D+)s=s(d+)/

这篇关于PHP preg_Match含义和问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆