【PHP Regex – 1个或更多整数的值】教程文章相关的互联网学习教程文章

PHP regex和号问题【代码】

我使用以下正则表达式来验证用户名(注册表格中的输入类型文本),以确保用户名仅包含字母数字字符,点,破折号或下划线.if (!preg_match('/^[a-zA-Z0-9\.\_-]+$/',$my_name)) { echo 'no_valid'; }当我在文本字段中输入例如%或#或@时,我正确地返回了错误消息,即它不是有效的用户名,同时也接受了有效字符(.-_),因此直到我之前,它似乎都可以正常工作类型&或,然后可以使用preg_match输入我之前已排除的任何无效字符. 谁能告诉我为什么会...

PHP-Regex-量词的无效目标【代码】

我有这个简单的正则表达式,我正在RegExr上对其进行测试.^(?<name>[a-z0-9\-]+)它应该给我一个关联数组,其名称字段匹配包含a-z和0-9的字符串. 但是我明白了吗?带有该错误的红色下划线字符. 为什么?解决方法:不幸的是,RegExr v2依赖于JS RegExp实现,该实现不支持命名捕获组.在regular expressions 101查看您的工作正则表达式

PHP RegEx的乐趣(preg_replace)【代码】

因此,我有一个表单元素正在提交给我构建的应用程序中的控制器/模型,我需要剥离不符合我的要求的所有HTML,并将其他HTML转换为该应用程序的专有标签,对此我感到疑惑是有人可以查看我的正则表达式preg_replace并查看可以进行哪些改进.$postText = $_POST['post_text']; //Regex Functions $p1 = '~<span class=\"atwho-view-flag atwho-view-flag-#\" c>|<span c class \"atwho-view-flag atwho-view-flag-#\">|<span c class \"atwho...

如果未使用PHP找到带有默认值的RegEx分组【代码】

这是一个示例字符串:$text = 'foo (20/50) bar () baz (11/30)';我需要的输出是这样的:$items = array(array("title" => "foo","number" => 20),array("title" => "bar","number" => 0)array("title" => "baz","number" => 11) );尝试 到目前为止,我一直在使用$matches_title = array(); $matches_number = array(); preg_match_all('!([^\s]+)!',$text,$matches_title); preg_match_all('!(?<=\()(\d+)(?=\/)!',$text,$matches_...

PHP中的RegEx:找到第一个匹配的字符串

我想在一个非常长的文本中找到第一个匹配的字符串.我知道我可以使用preg_grep()并采用返回数组的第一个元素.但是,如果我只需要第一场比赛(或者我知道事先只有一场比赛),这样做就没有效率.有什么建议吗?解决方法:preg_match()?preg_match() returns the number oftimes pattern matches. That will beeither 0 times (no match) or 1 timebecause preg_match() will stopsearching after the first match.preg_match_all() on the...

使用REGEX(PHP代码)替换两个HTML标记之间的所有“ foo”【代码】

我想要一个正则表达式代码,以将html标记pre><之间的所有“ foo”字符串替换为“ bar”. /预&GT这是一个例子: < html> < p> blah blah blah foo try foo< /p> < pre> foo try foo word foofoo < /pre> < /html>应该< html> < p> blah blah blah foo try foo< /p> < pre> bar try bar word barbar < /pre> < /html>因此,这意味着标记pre之间的所有foo应该替换为. 我试图使用此正则表达式模式,但无法正常工作.do { $string = preg_re...

php – RegEx:比较两个字符串以查找Alliteration和Assonance

可以比较两个字符串来查找Alliteration和Assonance吗? 我主要使用javascript或php解决方法:我不确定正则表达式是构建强大的比较工具的最佳方式.简单的正则表达式可能是更大的解决方案的一部分,该解决方案使用更复杂的算法进行非精确匹配. 英语有多种易于使用的选项,其中一些可以简单地扩展到使用Latin alphabet的语言.这些算法中的大多数已经存在了数年甚至数十年并且有很好的文档记录,尽管它们都有限制. 我想非拉丁字母表有类似的...

PHP / Regex:bbcode [s]或[strike]的简单正则表达式无效【代码】

对于一个愚蠢的bbcode解析器,我想将两个定义添加到一个,我的原始定义是preg_replace:'#\[s\](.*?)\[/s\]#si', '<strike>\\1</strike>'这是有效的,我希望用户能够使用[s]或[strike]来启动该格式的文本,所以我自然会添加这样的东西,认为它会起作用:'#\[(s|strike)\](.*?)\[/(s|strike)\]#si', '<strike>\\1</strike>'不幸的是,失败了,而不是你所期望的,[s]和[strike](正确使用)使得:s和罢工(我的降价是正确的,以显示其真实的结果,...

php – 使用preg_replace()和regex用小写替换大写字符串【代码】

是否可以使用preg_replace和regex替换小写的大写字母? 例如: 以下字符串:$x="HELLO LADIES!";我想将其转换为:hello ladies!使用preg_replace():echo preg_replace("/([A-Z]+)/","$1",$x);解决方法:我想这就是你想要完成的事情:$x="HELLO LADIES! This is a test"; echo preg_replace_callback('/\b([A-Z]+)\b/', function ($word) {return strtolower($word[1]);}, $x);输出:hello ladies! This is a testRegex101演示:htt...

用逗号(.)RegEx php替换逗号(,)【代码】

我正在尝试此代码,但我收到此错误:找不到结束分隔符’/’$form = " 2000,50"; $salary = preg_replace('/',', '.'/', $form); // No ending delimiter '/' found echo $salary;我不确定正则表达式验证.解决方法:正则表达式替换只有一个字符是过度的.为什么不这样做呢?str_replace(',', '.', $form);

PHP使用RegEx获取字符串的子字符串【代码】

我正在寻找一种使用PHP解析子字符串的方法,并且遇到了preg_match但是我似乎无法解决我需要的规则. 我正在解析一个网页,需要从字符串中获取一个数值,字符串是这样的producturl.php?id=736375493?=tm我需要能够获得这部分字符串: 736375493 谢谢亚伦解决方法: $matches = array(); preg_match('/id=([0-9]+)\?/', $url, $matches);如果格式改变,这是安全的.如果您在URL中有任何其他号码,slandau的答案将无效. php.net/preg-match

在PHP XPath中使用Regex-> evaluate【代码】

作为一个简单的例子,我试图获取包含电子邮件地址的所有dom对象.$doc = new DOMDocument;$doc->loadHTML($page);$xpath = new DOMXPath($doc);$body = $doc->getElementsByTagName('table')->item(0);$query = "//text()[fn:matches(., '[\w\d\.-]+@[\w\d\.-]+\.[a-zA-Z]{2,4}')]"; // $entries = $xpath->evaluate($query, $body); // foreach ($entries as $entry) {echo "Found {$entry->textContent}<br>\n";}我收到错误:“DOM...

PHP Regex在BBCode标签之间获取文本

我需要有关以下PHP代码的帮助: 在给定字符串中每次出现BBCode标签[code]和[/ code]之间获取文本,这样我就可以用nbsp字符替换空格”. 长话短说,我不能用CSS或DOM来做这件事,我需要在服务器上做这个. #[code](.*?)[/ code]#似乎只有在起始标记和结束标记之间没有间断(或换行符)时才会起作用….

使用PHP和Regex获取Steam社区市场上商品的价格【代码】

我正在尝试使用PHP来获取项目的Steam社区市场价格.我拿一个网址(例如:http://steamcommunity.com/market/listings/730/StatTrak%E2%84%A2%20P250%20%7C%20Steel%20Disruption%20%28Factory%20New%29)然后我用file_get_contents()下载内容.我试着用这个:function getInnerHTML($string, $tagname, $closetagname) {$pattern = "/<$tagname ?.*>(.*)<\/$closetagname>/";preg_match($pattern, $string, $matches);return $matches[...

php – Laravel Rules&Regex(OR)运算符的问题【代码】

我的Laravel规则和正则表达式操作有一个小问题: 基本上规则就是这样一个数组:'room'=>'required|alpha_num|min:2|max:10',我遇到的问题是使用正则表达式和| (或)操作符,例如:'cid'=>'required|regex:/^((comp)|(soen)|(engr)|(elec))\d{3}$/i',我收到服务器错误说:ErrorExceptionpreg_match(): No ending delimiter '/' found我猜测preg_match正在第一个停止在 – 的里面 /…/. 反正有没有写上面的代码使它工作? 完整代码:pu...