I have a string = "[VIDEO]http://www.youtube.com/watch?v=etye3skwu9w[/Video]"
我使用以下Regex来匹配VIDEO标签
'/\[VIDEO\](.+?)\[\/VIDEO\]/i'
如果[VIDEO]
标记中没有空格,它可以正常工作。但如果有[ VIDEO ],
这样的空间,它就行不通。
如何忽略空格。我的意思是如果标签是这样的[ VIDEO ]
,我的REGEX应该工作。
答案 0 :(得分:3)
在要允许空格的位置添加\s*
。 \s
是空格,*
是任意数量的重复(包括零):
'/\[\s*VIDEO\s*\](.+?)\[\s*\/VIDEO\s*\]/i
答案 1 :(得分:1)
\s
匹配任何空格。你可以用这个:
'/\[\s*VIDEO\s*\](.+?)\[\s*\/\s*VIDEO\s*\]/i'
这允许[ VIDEO ]
或[/ VIDEO]
这样的空格。或者,只允许空格
'/\[ *VIDEO *\](.+?)\[ *\/ *VIDEO *\]/i'
或一个空间
'/\[ ?VIDEO ?\](.+?)\[ ?\/ ?VIDEO ?\]/i'