我有一个用户表单,我在其中一个字段中输入了一个电话号码作为输入.我有两个单独的RegEx语句检查输入.
第一个是:
preg_match('/^([\(]{1}[0-9]{3}[\)]{1}[\.| |\-]{0,1}|^[0-9]{3}[\.|\-| ]?)?[0-9]{3}(\.|\-| )?[0-9]{4}$/', $phone);
它很棒.它可以识别许多不同的格式,即222-333-4444或2224445555.
另一方面,当我尝试:
preg_replace('/\+?1?[-\s.]?\(?(\d{3})\)?[-\s.]?(\d{3})[-\s.]?(\d{4})/g', '($1) $2-$3', $phone);
应该将传入的字符串格式化为(222)333-4444格式,$ phone在preg_replace()调用后保持不变.
任何帮助都感激不尽!
什么是全部更换一组使用PHP和括号之间的内容的语法preg_replace.
例如,我想(unknowntext)用以下代码删除" ":
$string = 'This text (wont) work';
preg_replace("(unknowntext)", "", $string);
Run Code Online (Sandbox Code Playgroud)
预期产量: This text work
我有一个获取url输入,我需要将其传递给数据库,但在此之前,因为我知道用户ID将始终是一个整数,我想过滤除了PHP中的所有数字.接下来的代码是我提出的,有没有人知道比这更好的方法?或者这是正确的方法吗?
$id = preg_replace('#[^0-9]#i', '', $_GET['id']);
Run Code Online (Sandbox Code Playgroud) 我正在用PHP编写聊天机器人.
这是代码的一部分
public function messageReceived($from, $message){
$message = trim($message);
if(stristr($message,"hi")|| stristr($message,"heylo")||stristr($message,"hello")||stristr($message,"yo")||stristr($message,"bonjour")){
return "Hello,$from,how are you"; // help section
}
Run Code Online (Sandbox Code Playgroud)
现在在if语句中,我可以使用正则表达式,如果消息以:H或Y开头,它将返回给定的语句.
某种东西:
H*|| Y*用正式语言
有没有这样的方法呢?
我需要在drupal中编写一个自定义模块来帮助我进行位置搜索.最初我只需要从查询中删除一个逗号,然后我意识到我需要用缩写(加利福尼亚 - > CA)替换所有状态实例,因为信息存储在我的数据库中.但是,在执行此操作后,我发现使用preg_replace的方法似乎依赖于大写/小写.所以在这一行:
$form_state['values'] = preg_replace("/alabama/", 'al', $form_state['values']);
"alabama"将被替换为"al",但"Alabama"或"ALABAMA"将不会.有没有办法用它的缩写取代任何Alabama实例而不考虑外壳中每种可能的变化?
在PHP中,我有一个带有HTML和javascript的模板:
<script>
if (a < b) {
alert(a);
}
</script>
<div>
hello
</div>
Run Code Online (Sandbox Code Playgroud)
这是使用该loadXML方法输入DOMDocument ,但由于<脚本中的字符,这会产生错误.我知道我可能会使用该loadHTML方法,但是现在我只需要一个快速修复,替换script标签内的<字符,然后再用一个替换它<
所以问题是,更换<角色的最佳方法是什么,但仅限于script标签内部?
这是我的状态网址的样子
http://twitter.com/username/statuses/303095169115357184
Run Code Online (Sandbox Code Playgroud)
现在我想303095169115357184使用preg_replace 获取推文ID .
有人可以用正则表达式帮我吗?
我想替换这个URI
http://localhost/prixou/index.php?page=list&category=1&sub=1&subsub=0&brand=Sony&toto=titi
Run Code Online (Sandbox Code Playgroud)
通过这个URI
http://localhost/prixou/index.php?page=list&category=1&sub=1&subsub=0&kljklj=sdfsd
Run Code Online (Sandbox Code Playgroud)
==>我想删除"&brand = Sony"
我试过这个:
preg_replace('/(^.*)(&brand=.*)(&.*)/', '$1$3', 'http://localhost/prixou/index.php?page=list&category=1&sub=1&subsub=0&brand=Sony&toto=titi');
Run Code Online (Sandbox Code Playgroud)
但它在特定情况下不起作用:URI中的参数"toto"不存在的情况
所以,如果我这样做
preg_replace('/(^.*)(&brand=.*)(&.*)/', '$1$3', 'http://localhost/prixou/index.php?page=list&category=1&sub=1&subsub=0&brand=Sony');
Run Code Online (Sandbox Code Playgroud)
它不起作用==>"&brand = Sony"仍然出现
那我该怎么办?
需要改造
PROP_RESOURCE_TYPE
Run Code Online (Sandbox Code Playgroud)
至
propResourceType
Run Code Online (Sandbox Code Playgroud)
要么
setPropResourceType
Run Code Online (Sandbox Code Playgroud)
数字_和字符串长度不固定.
我不是真的preg_replace,你能帮助我吗?
我想把这些字母和数字保存在一个字符串中
我不想要这个
码
$content = preg_replace("???", "", $string);
Run Code Online (Sandbox Code Playgroud)