可选组的正则表达式反向引用(Javascript)

时间:2016-02-11 16:14:59

标签: javascript regex reference

我有以下字符串:

<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可以是文字或数字):))

0 个答案:

没有答案