草庐IT

PHP 正则表达式删除 <h1> 标签(及其内容)

嘿,我似乎无法在网上找到任何正则表达式来删除标签(及其内容)。任何人都可以伸出援手并提供帮助。 最佳答案 不要使用正则表达式,使用类似PHPSimpleHTMLDOM的工具.//Constructdomfromstring$dom=str_get_html($html);//...orconstructdomfromfile/url$dom=file_get_html($path);//striph1tags(andtheircontent)foreach($dom->find('h1')as$node){$node->outert

php - 如何在 <img> 标签中用 %20 替换空格

我想替换html文本的图像标签中的所有空格。例子:到我没有找到preg_replace的灵魂,但它可能是一个简单的正则表达式行。谢谢!编辑:对不起大家,我的描述不是很清楚。所以,我有一个完整的html页面,我只想替换img标签内的内容。我不能在这里使用urlencode,因为它也会对其他内容进行编码。 最佳答案 编辑我可能没有捕获要点,如果您不扫描已经写出的HTML,那么这可能不适合您。这是因为如果您出于任何原因报废它。我离开它纯粹是为了怀旧,因为它可以帮助其他想要抓取和更换的人。抱歉造成混淆。既然您知道标签和属性,我建议您查看PH

php - 正则表达式 : same character 3 times

我想要一个正则表达式(在php中)对此(相同字符3次):aa=>falseaaa=>truebaaa=>trueaaab=>trueaaaaaab=>truebaaab=>truebabababa=>false对于任何字符,不仅仅是'a'和'b'。 最佳答案 您可以使用back-references在正则表达式中/(.)\1\1/ 关于php-正则表达式:samecharacter3times,我们在StackOverflow上找到一个类似的问题: https

php - 在字符串中查找@mentions

尝试用anchor标记替换所有出现的@mention,到目前为止我有:$comment=preg_replace('/@([^@])?/','@$1',$comment);采用以下示例字符串:"@namekdfjdfkjdas@name@lkjlkj@name"到目前为止一切都匹配,但我想忽略那个“@”符号。我试过在“[^@]”之后使用“+”和“{2,}”,我认为这会强制执行最少的匹配,但它不起作用。 最佳答案 替换问号(?)量词(“可选”)并在您的字符类之后添加+(“一个或多个”):@([^@]+)

php - 如何使用 php 删除转义的正斜杠?

我正在使用GoogleDriveAPI,我获得的refresh_token有一个转义的正斜杠。虽然这应该是有效的JSON,但API在调用refreshToken()时不会接受它。我正在尝试使用preg_replace删除反斜杠:$access_token="1\/MgotwOvbwZN9MVxH5PrLR2cpvX1EJl8omgYdA9rrjx8";$access_token=preg_replace('/\\\//','/',$access_token);我希望返回的字符串是:"1/MgotwOvbwZN9MVxH5PrLR2cpvX1EJl8omgYdA9rrjx8";我尝试了各

php - 用 PHP 解析电子邮件地址?

类似于thisquestion,我如何解析这种格式的电子邮件地址,"BobSmith",joe@company.com,"JohnDoe"得到这样的结果:array('bob@company.com'=>'BobSmith''joe@company.com'=>'''john@company.com'=>'JohnDoe'); 最佳答案 好吧,你可以使用mailparse_rfc822_parse_addresses(),正是这样做的。它是一个PECL扩展,因此使用起来可能更容易Mail_RFC822::parseAddressLi

php - 仅正整数的正则表达式是什么? (零是不允许的)

仅正整数的正则表达式是什么?(零是不允许的)我只能得到数字的正则表达式^\d+$。我一直试图在网上寻找一个,但已经一个小时了,所以我决定将其发布在StackOverflow上。匹配:1||2||444||9000||012不匹配:9.2||-90 最佳答案 ^0*[1-9]\d*$将匹配除零以外的所有数字。 关于php-仅正整数的正则表达式是什么?(零是不允许的),我们在StackOverflow上找到一个类似的问题: https://stackoverflo

php - 正则表达式匹配 % 之间的字符串

我正在尝试匹配包含在%中的子字符串,但preg_match_all似乎在同一行中同时包含多个子字符串。代码如下所示:preg_match_all("/%.*%/","%hey%_thereyou're_a%rockstar%\nyo%there%",$matches);print_r($matches);产生以下输出。Array([0]=>Array([0]=>%hey%_thereyou're_a%rockstar%[1]=>%there%))但是我希望它生成以下数组:[0]=>%hey%[1]=>%rockstar%[2]=>%there%我错过了什么?

php - 正则表达式 php : find everything in div

我正在尝试使用正则表达式查找div中的所有内容。我知道可能有更聪明的方法来执行此操作-但我选择了正则表达式。所以目前我的正则表达式模式如下所示:$gallery_pattern='/([\s\S]*)/';它在某种程度上起到了作用。问题是如果我有两个div一个接一个-就像这样。texttoextractheretexttoextractfromhereaswell我想从两个div中提取信息,但我的问题是,在测试时,结果是我没有得到介于两者之间的文本,而是:"texttoextractheretexttoextractfromhereaswell"总结一下。它会跳过div的第一端。并继续

PHP:使用 preg_match 获取 url 变量?

http://www.example.com?id=05或http://www.example.com?id=05&name=johnny这是一个字符串。我想从中获取$id的值。它的正确模式是什么? 最佳答案 您不需要正则表达式(除非您有充分的理由,否则您以后不应该直接跳到正则表达式)。使用parse_url()使用PHP_URL_QUERY检索查询字符串。然后将其与parse_str()配对.$querystring=parse_url('http://www.mysite.com?id=05&name=johnny',PHP_U