草庐IT

替换Notepad++

全部标签

php - 用匹配索引替换字符串中的序列

在PHP中,如果我要替换字符串“abababc”中的“a”,我如何将其替换为匹配的索引(即“1b2b3bc”)? 最佳答案 使用preg_replace_callback相反。PHP5.3.0示例(未测试):$i=0;preg_replace_callback("/a/",function($match){global$i;return++$i;},"abababc"); 关于php-用匹配索引替换字符串中的序列,我们在StackOverflow上找到一个类似的问题:

php - smarty 替换换行符

在撰写本文时,smarty.net网站似乎已关闭。无论如何,如何用smarty变量中的空格替换换行符?是不是像这样{$var|regex_replace:'[\\r\\n]':'\s'}?我试过了,但没用。 最佳答案 如果可行,试试这个:{$var|regex_replace:"/[\r\n]/":""} 关于php-smarty替换换行符,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

php - 用不同的值替换多次出现的字符串

我有一个生成包含特定标记的内容的脚本,我需要用单独循环产生的不同内容替换每次出现的标记。使用str_replace将所有出现的标记替换为相同的内容很简单,但我需要用循环的下一个结果替换每次出现的标记。我确实看到了这个答案:Searchandreplacemultiplevalueswithmultiple/differentvaluesinPHP5?但是它是根据我没有的预定义数组工作的。示例内容:Thisisanexampleof%%token%%thatmightcontainmultipleinstancesofaparticular%%token%%,thatneedtoeach

php - 如何在 PHP 中使用 RegEx 替换所有十六进制?

所以我一直在研究正则表达式,我的friend向我提出挑战,要求我编写一个脚本来替换字符串中的所有十六进制。他给了我一个混合了不同字符的大文件,当然还有一些十六进制字符串。每次出现的十六进制都以\x开头,例如:\x55。我觉得这很容易,所以我在一些在线正则表达式测试器上尝试了这个模式:/\\x([a-fA-F0-9]{2})/它工作得很好。但是,当我将它放入一些PHP代码中时,它根本无法替换它。任何人都可以在我出错的地方向我指出正确的方向吗?这是我的代码:$toDecode=file_get_contents('hex.txt');$pattern="/\\x(\w{2})/";$rep

php - preg_replace 双重替换

我从正则表达式中得到了一些意想不到的结果,这意味着要替换命名空间上的类名。替换似乎发生了两次,因此被替换的类名是重复的(请参见下面的示例)。我实际上已经通过更改正则表达式以匹配1个或多个(+)而不是0个或多个(*)来解决问题,这实际上更准确为了我想要的。但是,我对为什么一开始会遇到问题感到有点困惑。这是问题的一个例子:$classns='components\groups\GroupsController';$newclass='GroupsAccess';$classns=preg_replace('/[^\\\\]*$/',$newclass,$classns);echo$clas

php - 用有效 ID 替换 URL

我有一个包含很多链接的PHP字符串$menu。我需要用基于链接的ID替换href。我需要删除域名删除开头和结尾的斜杠用'-'替换中间的斜杠这是我所拥有的:LinkAnotherLinkSubLink这就是我想要的:LinkAnotherLinkAnotherLink我用preg_replace试过了$search=array("/http:\/\/www.test.de/","/".preg_quote('/">','/')."/");$replacement=array('#','">');$menu=preg_replace($search,$replacement,$menu);

PHP - 如何在大量文件中替换字符串?

我在服务器上有200万个文本文件可供Internet用户在线访问。我被要求尽快对这些文件进行更改(字符串替换操作)。我正在考虑对服务器上的每个文本文件执行str_replace。但是,我不想占用服务器并使其无法被Internet用户访问。您认为以下是个好主意吗?$object){set_time_limit(100);//dostr_replacestuffonthefile} 最佳答案 使用find,xargs和sed来自shell,即:cd/dirfind.-typef-print0|xargs-0sed-i's/OLD/NEW

php - 如何在标记 <code> </code> 中将正则表达式字符 < 和 > 替换为 < 和 >?

我有一个像下面这样的字符串:abc在tag我要替换所有字符和>与<和>.我该怎么办?示例:<div>.如果您有任何想法,请告诉我。谢谢大家。 最佳答案 尝试以下解决方案:$textToScan='abc';//theregexpattern(caseinsensitive&multiline$search="~(.*?)~is";//firstlookforallCODEtagsandtheircontentpreg_match_all($search,$textToScan,$matches);//prin

php - 通过引用翻译变量替换文本中的占位符

我正在尝试从以下函数中删除eval。我尝试使用sprintf和${},但仍然找不到解决方案。这里是函数:functionparseDbString(string$value='Lookingforagood{{$pippo}}'){$pippo='Pizza';returnpreg_replace_callback('/{{(.*?)}}/',function($res)use($pippo){//$val=${trim($res[1])};Returns"Undefinedvariable:$pippo"$val=@eval("return".trim($res[1]).";");/

php - 在 PHP 中使用正则表达式替换空格

我对正则表达式还很陌生。我需要替换一段多行文本中的空格。替换规则如下:将行首的所有空格替换为不间断空格( )。用相同数量的不间断空格替换任何重复空格的实例(多个空格在一起)。不在行首的单个空格保持不变。我使用了RegexCoach构建匹配模式:/(){2,}|^()/假设我有这个输入文本:asdasdasdasdasdas1asda234454554345453453453434345使用PHP正则表达式替换函数(如preg_replace()),我想得到这个输出:asdasdasdasd&nbsp;&nbsp;asdas1&nbsp;asda2344545&a