草庐IT

regex_match

全部标签

PHP - Preg_match 最短匹配

我正在尝试从此字符串中获取“内容”:$string="startstartcontentend";像这样使用preg_match:preg_match('/start(.*?)end/',$string,$matches);echo$match[1];但是,问题是$matches[1]返回startcontent而不仅仅是content因为有两个start在$string中(也许更多)如何使用preg_match只获取content部分? 最佳答案 使用否定前瞻:$string="startstartcontentend";preg

用于分割字符串的 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 - 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 RegEx 还原断言以获得相反的匹配

这是我的第一个问题,所以请多多关照:)。我正在尝试构建一个正则表达式来获取一组有效的IP(好的,至少使用正确的IPv4格式)而不是根据RFC1918的私有(private)IP。到目前为止,我已经找到了一种方法恰恰相反,我的意思是成功匹配私有(private)IP,所以我需要的只是一种恢复断言的方法。这是到目前为止的代码://Thisisanexamplestring$ips='10.0.1.23,192.168.1.2,172.24.2.189,200.52.85.20,200.44.85.20';preg_match_all('/(?:10\.\d{1,3}|172\.(?:1[6

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 Regex 排除已经匹配的特定模式

你好,我需要一只手,上面有下面的图案:(?内容..1.0/1.1/1.23/以上模式选择../,1.0/,1.1/,1.23/我不想匹配../,但数字、句点和/的任何排列都应该匹配。请帮帮我。一如既往的感谢。 最佳答案 您可以在现有的正则表达式中放置一个否定的先行断言:(?Seeit 关于PhpRegex排除已经匹配的特定模式,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/125

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

php preg_match -> 在变量中保存匹配值?

我的$content变量存储了一个youtube视频链接。$youtubeurl="/(\[TRACK=)((http|https)(\:\/\/)(www|it|co\.uk|ie|br|pl|jp|fr|es|nl|de)(\.youtube\.)(com|it|co\.uk|ie|br|pl|jp|fr|es|nl|de)([a-zA-Z0-9\-\.\/\?_=&;]*))(\])/si";$video=preg_match($youtubeurl,$content,$found);print_r($video);//1如何将匹配字符串的值存储在变量中?现在如果我print_r

PHP preg_match 除单词外的任何字符

这个问题在这里已经有了答案:Regularexpressiontomatchalinethatdoesn'tcontainaword(33个答案)RegularExpressionblocknegation(1个回答)关闭9年前。要匹配除指定字符(在此示例中为“f”)之外的任何字符,我使用[^f]+。但是如何匹配指定单词以外的任意字符呢?像[^word]+这样的东西示例:haystack:"bla1bla2bla3bla4hellobla5bla6bla7"(haystack包含HTML和换行符)针:"bla1bla2bla3bla4"所以我想捕捉从开始到"hello"的所有内容