REGEX可选值所需的帮助

时间:2014-11-14 17:11:49

标签: javascript regex

我需要一个正则表达式来解析下面的字符串:

{ "<div class="highlighttitle2">UNSPSC 43211701</div>" }

整个字符串是选项。我需要的输出是

UNSPC:43211701

请帮忙。

我试过..

.*?((?(?=ul).*?(?(?=div)|.*?\bUNSPSC\b.*?(?'UNSPSC'[^<]*)</div>)|.*?(?(?=div).*?\bUNSPSC\b.*?(?'UNSPSC'[^<]*)</div>|))|).*?((?(?=ul).*?(?(?=div)|.*?\bUNSPSC\b.*?(?'UNSPSC'[^<]*)</div>)|.*?(?(?=div).*?\bUNSPSC\b.*?(?'UNSPSC'[^<]*)</div>|))|)

2 个答案:

答案 0 :(得分:1)

如果你可以保证字符串总是以UNSPC开头,后面是没有空格的数字,那么你的正则表达式可能是

(UNSPC \d*)

您的结果UNSPC 43211701将位于第一个捕获组中。

答案 1 :(得分:1)

这将尽可能少地回馈(可能是您正在寻找的)

(UNSPSC\s\d+?(?=<))

它不关心有多少位数,但只会给你一个匹配而不是每个数字的匹配。