Trying To Find Forward Slash In Preg_Match(正在尝试在preg_Match中查找正斜杠)
本文介绍了正在尝试在preg_Match中查找正斜杠的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经找了几个小时,试图找到这个问题的解决方案。我正在尝试确定请求URI是否合法,并从那里将其分解。
$samplerequesturi = "/variable/12345678910";
要确定它是否合法,第一部分variable
仅为字母,长度可变。第二部分是数字,总共应该有11个数字。我的问题是转义转发劈开,以便它在URI中匹配。我已尝试:
preg_match("/^[/]{1}[a-z][/]{1}[0-9]{11}+$/", $samplerequesturi)
preg_match("/^[\/]{1}[a-z][\/]{1}[0-9]{11}+$/", $samplerequesturi)
preg_match("/^#/#{1}[a-z]#/#{1}[0-9]{11}+$/", $samplerequesturi)
preg_match("/^|/|{1}[a-z]|/|{1}[0-9]{11}+$/", $samplerequesturi)
我现在记不起来了。
请求通常会出错:
preg_match(): Unknown modifier '|'
preg_match(): Unknown modifier '#'
preg_match(): Unknown modifier '['
编辑: 我想我应该声明请求URI已经知道。我正在试着证明整个字符串,以确保它不是假字符串,即确保第一组只有小写字母,第二组只有11个数字。
推荐答案
/
不是唯一可以用作分隔符的内容。事实上,您几乎可以使用任何非斯拉夫数字字符。就我个人而言,我喜欢使用()
,因为它提醒我结果数组的第一项是整个匹配,而且它在模式中也永远不需要转义。
preg_match("(^/([a-z]+)/(d+)$)i",$samplerequesturi,$out);
var_dump($out);
应该可以了。
这篇关于正在尝试在preg_Match中查找正斜杠的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:正在尝试在preg_Match中查找正斜杠
基础教程推荐
猜你喜欢
- 在多维数组中查找最大值 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01