我正在尝试使用 JavaScript 正则表达式从文件中提取子字符串。这是文件中的一个片段:
DATE:20091201T220000
SUMMARY:Dad's birthday
我要提取的字段是“摘要”。方法如下:
extractSummary : function(iCalContent) {
/*
input : iCal file content
return : Event summary
*/
var arr = iCalContent.match(/^SUMMARY\:(.)*$/g);
return(arr);
}
function extractSummary(iCalContent) {
var rx = /\nSUMMARY:(.*)\n/g;
var arr = rx.exec(iCalContent);
return arr[1];
}
您需要进行以下更改:
Put the *
括号内为
上面建议的。否则你的匹配
组将仅包含一个
特点。
摆脱^
and $
。使用全局选项,它们匹配整个字符串的开头和结尾,而不是行的开头和结尾。相反,匹配显式换行符。
我想你想要匹配的组(什么是
括号内)而不是
完整的数组?arr[0]
是
完整比赛("\nSUMMARY:..."
) 和
下一个索引包含该组
火柴。
String.match(regexp) 是
应该返回一个数组
火柴。在我的浏览器中却没有(Mac 上的 Safari 仅返回完整的
匹配,而不是组),但是
Regexp.exec(string) 有效。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)