jjzjj

replacement

全部标签

存储在文本文件中的 PHP str_replace 数组

我正在尝试使用PHP的str_replace来替换基于两个数组的字符串,这两个数组都存储在一个外部文本文件中。//Allcodeslistedinatxtfile$codes=file('aircodes.txt');//Fullnamereplacements$full=file('fullcodes.txt');$string="BUFYULYYZ";$newstring=str_replace($codes,$full,$string);echo$newstring;我的aircodes.txt文件的内容:BUFYULYYZ我的fullcodes.txt文件的内容:Buffalo

php - 获取无效日期并 preg_replace 它

我用这个来替换有效日期:$date=preg_replace('~(\d{2})/(\d{2})/(\d{2,4})~','',$date);所以这样的日期:08/25/2016将被替换。我的问题是,有时用户会这样写日期:082/5/20160825/201608/252/01608/25/2010/85/2016我也想得到这个。有什么想法吗? 最佳答案 如果您的输入中有“日期之类的字符串”,您可以使用具有正向后视的正则表达式来确保数字和正斜杠block包含7到8位数字,然后是单词边界:'~\b(?=(?:\D*\d){7,8}\b

PHP、正则表达式和 preg_replace,需要一些帮助

我需要一些更换的帮助:Sometext[id]为了...Sometext|id我是正则表达式的新手,我只是不知道如何安全地将文本保存在[]中...而且我不想使用str_replace和trim...我必须使用表达式(不要问为什么:D)...有人可以帮助我吗? 最佳答案 这应该适用于非嵌套方括号:preg_replace("/\[(.*?)\]/","|$1","Sometext[id]")输出Sometext|id 关于PHP、正则表达式和preg_replace,需要一些帮助,我们在S

php - 使用 preg_replace 保存换行符

我有这段代码可以在输入到数据库的文本区域中保存换行符:$input=preg_replace("/(\n)+/m",'\n',$input);在检查数据库中的输入时,换行符实际上被保存了。但问题是当我想回显出来时,换行符不会出现在输出中,如何保留输入中的换行符并回显它们出去。我不想使用. 最佳答案 您正在将$input中的实际换行符序列替换为文字的两个字符序列\n(反斜杠+n)-而不是换行符。从数据库读取时,这些需要转换回换行符。虽然我怀疑您打算将这些实际的换行符保留在数据库中并且应该使用双引号字符串代替...$input=preg

PHP,preg_replace 中的嵌套模板

preg_replace("/\[b\](.*)\[\/b\]/Usi","$1","Sometexthere...[b][b]Hello,[b]PHP![/b][/b][/b]...[b]andhere[/b]");返回Sometexthere...[b]Hello,[b]PHP![/b][/b]...andhere但我需要替换所有[b]...[/b]标签。为什么我的情况没有发生这种情况? 最佳答案 是的,如果元素是嵌套的,则需要多遍方法。这可以通过以下两种方式之一来完成;从内到外或从外到内匹配。这里有两个经过测试的脚本,带有完整

php - 正则表达式 - preg_replace php - 理解

我有下面的代码,我试图理解这段代码到底做了什么,但是几次之后我没有弄明白......观察:这段代码是很久以前制作的,用于处理来自用户的一些输入,例如城市、州等。preg_replace('/\A[\w\.\-\+]+\z/','',$anyString)我已经知道的:\A=在输入的开头匹配\w=匹配任何单词\.,\-,\+=匹配字符。,和+\z=匹配字符串的结尾任何帮助将不胜感激,谢谢 最佳答案 \A-startatthebeginning[-matchanyofthefollowing:\w-awordcharacter(a-z,

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 - 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修饰