草庐IT

substr_replace

全部标签

php - 我怎样才能匹配\n\r 与 php 中的 preg_replace

我想删除html中的空段落:使用/\n\r/不能匹配这个使用时/.{0,2}/有效,为什么? 最佳答案 当你需要换行时,\r(return)出现在\n(new)之前,所以在你的表达式中你应该使用\r\n. 关于php-我怎样才能匹配\n\r与php中的preg_replace,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/40327041/

php str_replace函数问题

我正在尝试使用php将这个原始字符串转换为下面的结果。ORIGINAL:"Thequickbrownfoxjumpsoverthelazydog"RESULT:"godyzalehtrevospmujxofnworbkciuqehT"我到目前为止所做的解释如下。首先,从ORIGINAL中剥离HTML标签。$originalStr="Thequickbrownfoxjumpsoverthelazydog";$stripTags=strip_tags($originalStr);这导致Thequickbrownfoxjumpsoverthelazydog,其次,我使用strrev函数反转结

php - 如何做只匹配特定条件的preg_replace?

我正在努力编写一个preg_replace命令来实现我的需要。基本上我有以下数组(所有项目都遵循这四种模式之一):$array=array('Dogs/Cats','Dogs/Cats/Mice','ANIMALS/SPECIESDogs/Cats/Mice','(Animals/Species)Dogs/Cats/Mice');我需要能够得到以下结果:Dogs/Cats=DogsorCatsDogs/Cats/Mice=DogsorCatsorMiceANIMALS/SPECIESDogs/Cats/Mice=ANIMALS/SPECIESDogsorCatsorMice(Anima

php - 我可以使用 substr() 作为 in_array() 中的指针吗?

$haystack='Iamahaystack.Hearmerawr.';$pos=strlen($haystack);$nlen=1;$needle=array('.','.');print_r(in_array(substr($haystack,$pos,$nlen),$needle,true));我无法弄清楚为什么会失败。我想看看一组针是否与substr从大海捞针中选择的结果相匹配?我怎样才能将该值作为bool值返回? 最佳答案 是&否因为substr返回一个string,在您的情况下是needle,在失败时返回FALSE,在

php - preg_replace 仅外部标签? (...我们不是在谈论完整的 'html parsing' ,只是一些 Markdown )

突出显示某些文本(不包括OCCASIONAL标签“”中的文本)的最简单方法是什么?澄清:我希望保留现有标签!$t=preg_replace("/(markdown)/","$1","Thisisessentiallyplaintextapartfromafewhtmltagsgeneratedwithsomesimplifiedmarkdownrules:[seehere]");应该显示为:“这基本上是纯文本,除了一些使用一些简化的ma​​rkdown规则生成的html标签:seehere”...但不要弄乱anchor标记内的文本(即)。我听说过不使用正则表达式解析html的争论,但这

php - 使用 preg_replace 替换 php 中所有出现的地方

正则表达式绝对是我的弱点,这个让我完全难住了。我正在构建一个相当基本的搜索功能,我需要能够根据以下模式更改我的用户输入:主题:%22firstset%22%22secondset%22-drupal-wordpress期望的输出:+"firstset"+"secondset"-drupal-wordpress我希望我能提供更多帮助,因为我通常喜欢至少发布目前为止的解决方案,但在这个问题上我不知所措。感谢任何帮助。谢谢。 最佳答案 您的数据似乎是经过URL编码的。如果你申请urldecode,你会得到"firstset""second

php - PHP 中的 Preg_replace

我想替换{content}中包含的字符串中的内容。它是多行等。preg_replace函数应该删除整个{com没有垫子换句话说 最佳答案 试试这个:$result=preg_replace('/\{[^}]*\}/s','replacementcontent',$subject); 关于php-PHP中的Preg_replace,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/50

php - preg_replace 一次替换多个模式

我的$subject几乎没有可应用的替换,但我不想让旧替换#(1..i-1)的输出与当前替换#i匹配。$subject1=preg_replace($pat0,$rep0,$subject0);$subject2=preg_replace($pat1,$rep1,$subject1);$subject3=preg_replace($pat2,$rep2,$subject2);我尝试使用一个带有数组的preg_replace来进行模式和替换,希望它能立即完成;但事实证明它只不过是连续调用简单的preg_replace(当然有一些优化)在我阅读了有关preg_replace_callbac

php - Preg_replace 错误,当使用不同的语言文本时。 (摆脱线条)

我有这样的内容`மிழர்களிவரறில்யூலைமாதம்என்பதுகனத்தமாதமாகபதிவுசெய்யப்பட்டுள்ளது.குறிபாகஐந்துஆண்ளின்யூலைகள்முக்கியமானவை.1983ம்ஆண்டிற்குமுன்பேயூலைமாதம்தமிழர்களுடன்பின்னிப்பிணைந்து`我想摆脱所有的线,所以我得到这样的东西。மிழர்களிவரறில்யூலைமாதம்என்பதுகனத்தமாதமாகபதிவுசெய்யப்பட்டுள்ளது.குறிபாகஐந்துஆண்ளின்யூலைகள்முக்கியமானவை.1983ம

php - preg_replace 的贪婪度

echopreg_replace('/:*$/isD',':',':blue:');一个相当简单的PHP正则表达式,旨在捕获字符串末尾尽可能多的冒号(可能根本没有冒号)并仅用一个冒号替换它。或者至少那是我打算要做的。这是输出::blue::我预计,由于preg_replace是贪婪的,字符串末尾的冒号将被捕获,因此我会得到:blue:相反。奇怪的是,使用类似的代码检查字符串开头处的冒号(即/^(:)*/isD)是可行的。我猜这与正则表达式从左到右搜索的事实有关,所以在字符串示例的非工作端,它只找到字符串的末尾,而在字符串示例的工作前端,它是已经找到字符串的开头。也就是说,我可以做些什么