簡體   English   中英

PHP preg_split表達式引發警告

[英]php preg_split expression raises warning

我的一個正則表達式會發出警告,而我只是想不出為什么或如何更改表達式以使其正常工作。 我必須逃脫嗎? 如果是,原因和方式是什么? 我想更好地了解...

$output = preg_split("/($beginDelimiter|$endDelimiter)/", $text);

PHP Warning: preg_split(): Compilation failed: missing ) at offset 15 in /home/tim/importer.php on line 539

謝謝你的幫助!

編輯:$ beginDelimiter包含SRF53 $ endDelimiter包含(

第二個問題一定是問題,我知道...它需要解決。

使用preg_quote ,因為您的變量包含需要在regex轉義的特殊字符。

preg_quote()接收字符串,並在作為正則表達式語法一部分的每個字符前加一個反斜杠。 如果您有需要在某些文本中匹配的運行時字符串,並且該字符串可能包含特殊的正則表達式字符,這將很有用。

$output = preg_split("/(".preg_quote($beginDelimiter)."|".preg_quote($endDelimiter)."/", $text);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM