jjzjj

preg-replace

全部标签

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 - 从 eregi 到 preg_match

我已经将我的php升级到5.3,所以我需要将正则表达式更改为preg_match。我已经成功地使用定界符对脚本进行了一些更改并将正则表达式更改为preg_match但我对以下代码感到震惊,尽管我没有收到任何错误cookie未被删除,但我尝试按以下方式进行更改。if(preg_match('#COOKIE_PREFIX#i',$key))原代码为//destroysthesessioncookiesfunctiondestroy($hash){foreach($_COOKIEas$key=>$value){if(eregi(COOKIE_PREFIX,$key)){$key=str_re

php - 正则表达式 - 负前瞻性转义

我有以下JSON编码的字符串:$json='"|\t|\n|\\\u0027|\\\u0022|"';除了\\\u0022或\\\u0027之外,转义所有(已经)转义的字符/代码点的最有效方法是什么?我虽然关于将preg_replace()与负先行正则表达式一起使用,但它没有像我预期的那样工作,输出应该是:$json='"|\\\t|\\\n|\\\u0027|\\\u0022|"';我在JSON-PHP-PCRE转义的海洋中迷失了方向,有人可以帮助我吗? 最佳答案 像这样的东西可能会在负前瞻的帮助下工作:输出string(25)"

php - 正则表达式中的奇怪行为

我正在为替换空行标签。正则表达式替换所有允许空格(\s)的黑线,一个标签。例如这个字符串:$string="with.\n\n\n\nTherefore";但返回2标签。所以,我做了这个测试:(它不是为了替换,只是为了测试)$string="with.\n\n\n\nTherefore";$string=preg_replace('/(^)(\s*)($)/m','[$1]|$2|($3)',$string);echo$string;并检查返回的内容:with.[]||()[]||()Therefore想象:with.\n^\n\n$^\n$\nTherefore正则表达式添加一个\n

php正则表达式替换HREF属性

如何使用phppreg_replace和regularexpression删除所有包含的超链接.这是我写的,但它不起作用$newlink=preg_replace('/^(.*)/is','',$link);我想将这些链接替换为aaanchormarkgotopart1gotopart2gotopart3为空值。 最佳答案 首先让我说,使用正则表达式来解析/修改HTML文档可能是错误的方法。我鼓励您查看DOMDocument如果您这样做是为了进行任何其他修改。话虽如此,使您的表达式成为非贪婪表达式(.*?)可能会奏效。$newlin

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 - PHP 中的正则表达式 (preg_match) 模式

我创建了一个在Dreamweaver的正则表达式查找中工作的正则表达式模式,但是当放入preg_match的模式时,它失败了。我在PHP(5.1.6)正则表达式规则中违反了什么,否则这些规则在Dreamweaver的解释中有效?这是PHP:preg_match("/(\{a\})([a-zA-Z0-9{}.])+(\{/a\})/i","{a}{900678}{abcde}{0}{0}{0}{/a}");当前返回false。我如何修改模式,使其匹配任何以{a}anythinggoesinthemiddle{/a}类型字符串开头的字符串?我意识到上面的正则表达式不会匹配中间的“任何东西”