目前我使用<pre>
显示一个大字符串段落,如下所示,其中每一行用新行表示:
SchoolDistrictCode:291238-9
location_version:3.4
build:e9kem
由此,我如何解析build:e9kem
?数据每次都有所不同,因此一旦识别出单词build
,就想解析该行。
答案 0 :(得分:2)
/^build:(.*)$/m
应该做的伎俩。 m
标记会导致^
和$
锚点在该行的开头和结尾匹配。
如果您将其称为
string.match(regexp)
匹配部分(在build:
之后,匹配.*
的部分,即字符串e9kem
)将位于结果数组的第二个元素中。
const regexp = /^build:(.*)$/m;
const stringPar = `SchoolDistrictCode:291238-9
location_version:3.4
build:e9kem`;
console.log(stringPar.match(regexp)[1]);
当然,如果没有匹配项,match
会返回null
,因此您可能需要检查:
var matches = stringPar.match(regexp);
if (matches) console.log(matches[1]);
else console.log("No match.");
或者,另一个常见的习语是
console.log((stringPar.match(regexp) || [])[1]);
如果不匹配,将记录undefined
。