如何使用preg_match匹配 url: "/student/courseSelect/thisSemesterCurriculum/182zz03e4h/ajaxStudentSchedule/curr/callback",中的链接
时间: 2023-09-17 11:12:17 浏览: 47
你可以使用以下的正则表达式来匹配该URL:
```
preg_match('/\/\w+\/\w+\/\w+\/\w+\/\w+/', $url, $matches);
```
其中,`\w`表示匹配任何字母、数字或下划线字符,`\/`表示匹配斜杠字符。
完整的示例代码如下:
```php
$url = "/student/courseSelect/thisSemesterCurriculum/182zz03e4h/ajaxStudentSchedule/curr/callback";
preg_match('/\/\w+\/\w+\/\w+\/\w+\/\w+/', $url, $matches);
print_r($matches);
```
输出:
```
Array
(
[0] => /student/courseSelect/thisSemesterCurriculum/182zz03e4h/ajaxStudentSchedule/curr
)
```
其中,`$matches[0]`就是匹配到的链接。
相关问题
php正则匹配url:http://cms.zgqx.gov.cn/
可以使用以下正则表达式来匹配这个URL地址:
```php
$pattern = '/(http|https):\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[a-zA-Z0-9\/+&=%#?.!_-]*/';
```
然后使用 PHP 的 preg_match() 函数可以对字符串进行匹配,示例代码如下:
```php
$url = 'http://cms.zgqx.gov.cn/';
$pattern = '/(http|https):\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[a-zA-Z0-9\/+&=%#?.!_-]*/';
if (preg_match($pattern, $url, $matches)) {
echo '匹配成功!';
} else {
echo '匹配失败!';
}
```
输出结果为:
```
匹配成功!
```
这样就成功地匹配出了这个URL地址。
!preg_match("/\;|cat/i", $c)
根据您提供的代码片段 `!preg_match("/\;|cat/i", $c)`,它使用了正则表达式和 `preg_match` 函数来检查变量 `$c` 中是否包含分号 (`;`) 或 `cat` 关键字。如果匹配成功,`preg_match` 函数将返回 0,否则返回 1。
这段代码的目的是为了防止用户在 `$c` 变量中插入分号或 `cat` 关键字,以避免执行恶意命令或读取敏感文件。通过使用正则表达式来检查变量内容,可以降低潜在的安全风险。
请注意,在编写正则表达式时要小心,确保它能够满足您的安全需求。根据具体情况,您可能需要进一步扩展或修改这个正则表达式,以匹配其他潜在的危险命令或关键字。
如果您有其他问题,我将很乐意帮助您。