我有一个正则表达式,我用它来减少多个斜杠到单斜杠.目的是读取以前使用apache中的mod_rewrite转换为人类可读链接的URL,如下所示:
http://www.website.com/about/me
Run Code Online (Sandbox Code Playgroud)
这有效:
$uri = 'about//me';
$uri = preg_replace('#//+#', '/', $uri);
echo $uri; // echoes 'about/me'
Run Code Online (Sandbox Code Playgroud)
这不起作用:
$uri = '/about//me';
$uri = preg_replace('#//+#', '/', $uri);
echo $uri; // echoes '/about/me'
Run Code Online (Sandbox Code Playgroud)
我需要能够单独使用每个url参数,但在第二个示例中,如果我爆炸了trailling斜杠,它将返回3个段而不是2个段.如果参数是空的,我可以在PHP中验证是否有,但是因为我正在使用那个正则表达式,如果正则表达式已经为我处理,那将是很好的,所以我不需要担心段验证.
有什么想法吗?
有人可以解释'e'标志的作用,或者将我链接到某个地方吗?我通过谷歌找不到任何东西.
例:
preg_replace("/a(b?)c/e", "search_foo_term('\$1')", $str);
Run Code Online (Sandbox Code Playgroud) 我想在PHP中preg_replace"Word".
$ret = 'I gave my Word to you.';
$pattern = '/\bWord\b/i';
$ret = preg_replace($pattern,"Heart",$ret);
// echo $ret; = "I gave my Heart to you";
Run Code Online (Sandbox Code Playgroud)
这项工作到目前为止.但如果这句话是"我给了你我的话".或者"我给了你我的话!" 它不会改变"Word".进入"心脏".
嗨,我尝试做这样的事情:
我有一些字符串 - 'Hello World!'例如.我想要替换除了第一个和白色空格之外的所有字符.
所以......结果将是:"H.... ......"; 我不想删除它,只是替换"."或其他字符.
我尝试过这样做,preg_replace但没有结果.
我一直遇到麻烦,我想知道是否有人知道preg_replace正则表达式可以删除除了从字符串遇到的第一个空格以外的所有空格.
|实例|
我有以下字符串:"我的第一个姓氏"
我想要实现的是:"我的FirstLastName"
对不起,但我对正则表达式很糟糕:(所以任何帮助表示赞赏.
我有一个带有问号('?')的字符串,我想用可解析的东西替换它.
但str_replace不会取代任何?我的字符串中的字符......
$str = str_replace('?', 'replacement', $str);
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
大家好我有一个小问题:
我有很多这样的字符串:
$content = "Hi I am a <a href='http://blabla' ...>black</a> cat";
Run Code Online (Sandbox Code Playgroud)
如何将此字符串转换为:
$content = "Hi I am a cat";
Run Code Online (Sandbox Code Playgroud)
我尝试过但不起作用......
$content = preg_replace("/<a href=.*?>(.*?)<\/a>/","$1",$content);
Run Code Online (Sandbox Code Playgroud) 我有一个字符串:'Some_string_to_capitalize',我想将其转换为'Some_String_To_Capitalize'.我试过了:
$result = preg_replace( '/(_([a-z]{1}))/' , strtoupper('$1') , $subject )
Run Code Online (Sandbox Code Playgroud)
和
$result = preg_replace( '/(_([a-z]{1}))/' , "strtoupper($1)" , $subject )
Run Code Online (Sandbox Code Playgroud)
我查看了php手册页,在这里,但没有发现任何东西.如果这是一个重复的道歉!
嗨,我希望替换我通过file_get_contents加载的html电子邮件中的单词
这是我的代码:
<?
$message = file_get_contents("http://www.MYwebsiteExample.com/EmailConfirmation.php");
$message = preg_replace('/SAD/', "HAPPY", $message);
// Also tried this below and it does not work either
$message = str_replace('/SAD/', "HAPPY", $message);
?>
Run Code Online (Sandbox Code Playgroud)
我希望找到SAD的所有模式(区分大小写)并用HAPPY替换它们.出于某种原因,如果我使用file_get_contents它似乎没有工作.
谢谢
更新:2013年1月22日
实际上,抱歉当我添加$时更正不起作用.它对我的代码不是必需的.我可以做一个解决方法,但这不起作用:
$message = str_replace("$SAD", "HAPPY", $message); /// does not work. Not sure why
$message = str_replace("SAD", "HAPPY", $message); /// without the $ it does work.
Run Code Online (Sandbox Code Playgroud) 如何使用PHP删除每个字符串的开头和结尾的所有特殊字符?告诉我怎么样?
示例代码:
$string ="_$#+Hello(+- $^#World2013@!%=+";
Run Code Online (Sandbox Code Playgroud)
从字符串的开始和结束位置删除所有特殊字符后.字符串将打印如下:
$string ="Hello(+- $^#World2013";
Run Code Online (Sandbox Code Playgroud)