我有以下字符串:
<CODE MUST OPTIONAL1 : OPTIONAL2> OPTIONAL3 </CODE MUST OPTIONAL1>
我尝试使用正则表达式来解析它,并且我使用以下内容:
/<CODE\s+([\w]*\w)(?:\s+([\w ]*\w)\s*)?(?::\s+([\w ]*\w)?))?\s*>(?:([^<]*?)<\/CODE /1 /2>)?/i
问题是当没有OPTIONAL1时,例如:
<CODE A B : C> ABC </CODE A B> (working)
<CODE A : C> ABC </CODE A> (not working)
<CODE A : C> ABC </CODE A > (working) ---> I needed to add an extra
space at the end of the first back reference.
你能在这帮我吗?我一定做错了什么!我也想问你表现明智,你建议我改变原来的正则表达式。 (BTW ......所有必须,OPTIONAL1,OPTIONAL2,OPTIONAL3可以是文字或数字):))