Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中使用正则表达式来表示包含元字符的短语?_Php_Regex - Fatal编程技术网

如何在php中使用正则表达式来表示包含元字符的短语?

如何在php中使用正则表达式来表示包含元字符的短语?,php,regex,Php,Regex,有人知道如何使用php正则表达式从包含正则表达式元字符的字符串中删除文本吗 例如— 在- "Look at the shiny apple [word]" //where 'word' could be anything 在- "look at the shiny apple" 你的正则表达式应该是这样的: "(?<=Look at the shiny apple )\S*" (?使用正则表达式替换某物 如果你想按字面意思匹配一个特殊字符,你必须在正则表达式中用反斜杠转义这个字符,比

有人知道如何使用php正则表达式从包含正则表达式元字符的字符串中删除文本吗

例如—

在-

"Look at the shiny apple [word]" //where 'word' could be anything
在-

"look at the shiny apple"

你的正则表达式应该是这样的:

"(?<=Look at the shiny apple )\S*"

(?使用正则表达式替换某物


如果你想按字面意思匹配一个特殊字符,你必须在正则表达式中用反斜杠转义这个字符,比如
\[
(如果你想匹配一个“[”)。

好吧,如果他们想在“看着闪亮的苹果”之后捕获每个字符,那就行了,但我想这至少是
(?我实际上忘记提到,.*后面有一个空格,但在这里不太可见。很抱歉,是的\s也可以。编辑原始帖子以更好地澄清,感谢您指出。您也需要一个
*
,否则它将只匹配第一个字符;)1简单明了地说,gaThis将替换整个句子,而不仅仅是方括号中的单词。您是否希望替换碰巧包含元字符的特定字符串(已经回答过)或通常任何包含元字符的字符串?然后您必须进行枚举,如
[[^$.\*+?()]
(这可能是一个不完整的字符类,只是为了让您了解这一点)。
"(?<=Look at the shiny apple )\S*"