PHP:如何删除"["和"]"之间的字符串

Wil*_*ilf 2 php preg-replace

我需要删除[...]内的字符串,包括"[]"本身.我尝试从这个网站搜索解决方案.我有一个线索,我应该尝试使用preg_replace,但它对我来说似乎太专业了.

例如 :

[gallery ids="92,93,94,95,96,97,98,99,100" orderby="rand"] Description The thirty-two storey resort condominium in Phuket, located Just 150m from Patong beach where choices of activities, water sp 
Run Code Online (Sandbox Code Playgroud)

我需要从示例文本中删除[gallery ids ="92,93,94,95,96,97,98,99,100"orderby ="rand"].它始终以[gallery ids ="开头.

请建议.

cry*_*c ツ 7

试试这个:

$string = '[gallery ids="92,93,94,95,96,97,98,99,100" orderby="rand"] Description The thirty-two storey resort condominium in Phuket, located Just 150m from Patong beach where choices of activities, water sp ';
$string = preg_replace('/\[gallery ids=[^\]]+\]/', '', $string);
Run Code Online (Sandbox Code Playgroud)

分解:

\[gallery ids= 寻找以...开头的子串 [gallery ids=

[^\]]+\]匹配1个或多个字符,]直到达到a]

然后将''没有任何东西替换整个匹配的部分,你有新的字符串.

  • 神秘,这就是我所说的.谢谢.问题解决了. (2认同)