关于php的一个正则表达式的问题

共识区块链技术社区 2007-06-14 10:11:55
语句:
preg_match("/-(.+)_/",GetUrl(),$use_get);
if(isset($use_get[1]))
{
// explode 分割字符串
$exp_get = explode("-page-",$use_get[1]);
}

if(isset($exp_get[0]))
{
$f_id = intval($exp_get[0]); // 论坛id
}

if(isset($exp_get[1]))
{
$page = intval($exp_get[1]); // page 页码
}
else
{
$page = "1";
}
可以匹配类似于 http://***.com/list.php?f-1-page-2.html的url吗?
"/-(.+)_/",这个如何解释,特别是中间那个(.+)和最后面那个"_".

还望大虾指点一二,谢谢了
...全文
244 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ImN1 2007-06-14
  • 打赏
  • 举报
回复
/-(.+)_/
匹配以“-”开始,以“_”结束,中间不含换行的字符(一个或以上),构成的字符串
其中子匹配是不包含上述的首尾那两个字符

按你写的URL一般是不匹配的,除非你的“***”符合上述条件
懒得去死 2007-06-14
  • 打赏
  • 举报
回复
/-(.+)_/

是指前面是-,后面是_,中间有一个以上任意字符的字符串,.表示除空字符外的任意字符,+是表示前面的字符出现一个以上, _没什么意思,就是_本身。

==
很清楚了。
foolbirdflyfirst 2007-06-14
  • 打赏
  • 举报
回复
网上很多资料的,不妨google一下
===========================================
. : (小数点)匹配除换行符外的所有单个的字符。
+ : 匹配+号前面的字符1次或n次。等价于{1,}。
_ : 字符'_'

可以匹配类似于 http://***.com/list.php?f-1-page-2.html的url吗?
==========================================================
不能,这里面没有出现在字符'-'和字符'_'中间的内容
hookee 2007-06-14
  • 打赏
  • 举报
回复
是指前面是-,后面是_,中间有一个以上任意字符的字符串,.表示除空字符外的任意字符,+是表示前面的字符出现一个以上, _没什么意思,就是_本身。
hejunbin 2007-06-14
  • 打赏
  • 举报
回复
http://***.com/list.php?f-1-page-2.html

呵呵,这个url比较有趣,没有尝试过?
正则表达式经典实例》讲解了基于8种常用的编程语言使用正则表达式的经典实例。书中提供了上百种可以在实战中使用的实例,以帮助读者使用正则表达式来处理数据和文本。对于如何使用正则表达式来解决性能不佳、误报、漏报等常见的错误以及完成一些常见的任务,《正则表达式经典实例》给出了涉及基于C#、Java、JavaScript、Perl、PHP、Python、Ruby和VB.NET等编程语言的解决方案。《正则表达式经典实例》的读者对象是对正则表达式感兴趣的软件开发人员和系统管理员。 《正则表达式经典实例》旨在教会读者很多新的技巧以及如何避免语言特定的陷阱,读者可以通过《正则表达式经典实例》提供的实例解决方案库来解决实践中的复杂问题。 《正则表达式经典实例》:每个程序员都会遇到需要使用正则表达式的情况,但是要用好正则表达式却并不容易。《正则表达式经典实例》提供了100多个实例,以帮助读者使用正则表达式处理数据和文本。即使有经验的用户也经常会遇到性能不佳、误报、漏报等让人挠头的错误,《正则表达式经典实例》对于如何使用正则表达式来解决一些常见的问题给出了按部就班的解决方案,其中包括C#、Java、JavaScript、Perl、PHP、Python、Ruby和VB.NET的实例。 《正则表达式经典实例》主要包括以下内容: 通过一个精练的教程理解正则表达式的基本原理和技巧; 在不同的编程语言和脚本语言中有效使用正则表达式; 学习如何对输入进行合法性检查和格式化; 处理单词、文本行、特殊字符和数值; 学习如何在uRL、路径、标记语言和数据交换中使用正则表达式; 学习更高深的正则表达式特性中的微妙之处; 理解在不同语言中正则表达式的API、语法和行为之间的区别; 创建更好的正则表达式来满足个性化的需求。 使用8种编程语言的详细解决方案,包括一个正则表达式简明教程

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧