草庐IT

preg_replace_all

全部标签

php - 如何在 preg_replace 中用 c(xxx) 替换 c(xxx)?

如何在preg_replace中用c(xxx)替换c(xxx)?在下面的代码中,我想将strc(xxx)替换为functiounc(xxx)。我没有得到我想要的正确结果。我的代码有什么问题?以及如何解决?$c['GOOD']='verygood';$c['BOY']='jimmy';functionc($x){global$c;if(isset($c[$x])){return$c[$x];}}$str="helloc(GOOD)worldc(BOY)";$str=preg_replace("@c\(([A-Z_\d]+)\)@",c('$1'),$str);echo$str;//-->

php - 拉维 5.1 : How to share a collection in all views?

我需要在所有View中共享一个集合。此集合包含网站新闻:$news=NewsStory::orderBy('created_at','desc')->paginate(5);我该怎么做? 最佳答案 可以分享ViewData所有View之间。只需将这一行添加到App\Providers\AppServiceProvider中的boot()方法:view()->share('news',NewsStory::orderBy('created_at','desc')->paginate(5));

php - preg_replace() 替换太多

我正在开发一个简单的SQL调试器,它将接受参数化变量并尝试相应地替换它们,这样如果一条SQL有问题,那么我可以将它直接复制并粘贴到我的RDBMS中以处理查询,并希望如此更快地调试问题。到目前为止,我基本上已经有了这个,但是它替换了太多:导致select*fromtable_namewherecommentlike'%thatisanice'monkeyzeus@example.com'butthisone%'andemail='monkeyzeus@example.com'andstatus='active'请注意,位置1的'monkeyzeus@example.com'正在从位置0进

php - `str_replace` 有什么特别之处?

我想编写一个函数,允许我用数组中的连续值替换字符串中重复的标记,这样WHEREname=?andage?,array('joe',32)变为Wherename=joeandage=32。(我知道变量绑定(bind)不应该“手动”完成;我正在尝试对传递给EloquentDB::select语句的参数进行故障排除)。我是这样写的:functionstr_replace_array($search,array$replace,$subject){foreach($replaceas$replacement){$subject=str_replace($search,$replacement,

PHP preg_replace oddity with £ pound sign and ã

我正在应用以下功能效果很好,但如果我将ã添加到preg_replace中,比如$new_string=preg_replace("/[^a-zA-Z0-9\sçéèêëñòóôõöàáâãäåìíîïùúûüýÿ]/","",$string);$string="Thisissometextandnumbers12345andsymbols!£%^#&$andforeignletterséèêëñòóôõöàáâäåìíîïùúûüýÿã";它与英镑符号£冲突,将英镑符号替换为黑色方block中未识别的问号。这并不重要,但有人知道这是为什么吗?谢谢,巴里更新:谢谢大家。更改函数添加u修饰

php - 使用 Str_replace 在 PHP 中将 Æ 转换为 "Ae"?

出于业务逻辑的原因,我需要将字符串中的字符“Æ”转换为“Ae”。然而,尽管mb_detect_encoding()告诉我字符串是UTF-8,但我不知道该怎么做。(出于业务逻辑的其他原因,在替换字符串之前对htmlentities()字符串将是一个问题,正如其他Google搜索所建议的那样。)我首先尝试的是这个,使用测试字符串“Æther”:returnstr_replace("Æ",'Ae',$string);不幸的是,它实际上并没有在文本中找到Æ,返回“Æther”。returnstr_replace(chr(195),'Ae',$string);找到Æ并替换它,但随后添加了一个未知

php - 使用 preg_replace 返回引用数组键并替换为值

我有这样一个字符串:http://mysite.com/script.php?fruit=apple我有一个这样的关联数组:$fruitArray["apple"]="green";$fruitArray["banana"]="yellow";我正在尝试在字符串上使用preg_replace,使用数组中的键来反向引用apple并将其替换为绿色,如下所示:$string=preg_replace('|http://mysite.com/script.php\?fruit=([a-zA-Z0-9_-]*)|','http://mysite.com/'.$fruitArray[$1].'/'

php - 这是 php 中的快速进程 strpos()/stripos() 或 preg_match()

我只想知道在php中,strpos()/stripos()或preg_match()函数中哪一个会更快。 最佳答案 我找到了thisblog已经对你的问题做了一些测试,结果是:strpos()比preg_match()快3-16倍stripos()比strpos()慢2-30倍stripos()比preg_match()快20-100%无大小写修饰符“//i”在preg_match()中使用正则表达式并不比使用正则表达式快长字符串在preg_match()中使用utf8修饰符“//u”使其慢2倍使用的代码是:

php - 尝试在 Preg_Match 中查找正斜杠

我已经搜索了几个小时,试图找到解决这个问题的方法。我正在尝试确定REQUESTURI是否合法并从那里分解它。$samplerequesturi="/variable/12345678910";判断是否合法,第一段variable只有字母,长度可变。第二部分是数字,总共应该有11个。我的问题是转义正斜杠,以便它在uri中匹配。我试过:preg_match("/^[\/]{1}[a-z][\/]{1}[0-9]{11}+$/",$samplerequesturi)preg_match("/^[\\/]{1}[a-z][\\/]{1}[0-9]{11}+$/",$samplerequestu

PHP:Preg_match_all 将 html 提取到字符串中

我有这样的html:Tagged:sports,entertain,funny,comedy,automobile,moretags.如何将运动、娱乐、搞笑、喜剧、汽车提取到字符串中我的phppreg_match_all看起来像这样:preg_match_all('/(.*?),/',$this->page,$matches);echovar_dump($matches);echoimplode('',$tags);它不起作用。 最佳答案 我不确定您是如何从中获取$this->page的,但是以下内容应该会如您所料:http://i