2
我有一些字符串类似如下:比赛第一和停止
Self-Service Portal - Company Name1 - Portal Header
Self-Service Portal - Company Name2 - Portal Footer
Self-Service Portal - Company Name1 - Portal Script
我想提取的公司名称。所以我做了以下的正则表达式的Javascript
var matchPattern = function(sourcestring) {
var re = /^.+\s+?-\s+?(.+?)\s+?-\s+?.+$/;
var matches = re.exec(sourcestring);
if(matches != null){
return matches[1];
}
\t else{
return 'Not Found';
\t }
}
alert(matchPattern('Self-Service Portal - Company Name1 - Portal Header'));
alert(matchPattern('Self-Service Portal - Company Name1 - Portal Footer'));
alert(matchPattern('Self-Service Portal - Company Name2 - Portal Header'));
alert(matchPattern('Self-Service Portal - Company Name 2 - Portal - Footer'));
这个工作,除了最后一个字符串“自助服务门户 - 公司名称1 - 门户网站 - 页脚”。 有人可以告诉我我做错了什么? 感谢
感谢您的回答,以及与懒惰匹配的评论。那么我会回答你的答案。即使身份证这是一次性批处理脚本,我不必关心效率 – CodeHacker
我看到。我的意思是说你应该非常小心''''''''+。+'和他们懒惰的对手。祝你好运。 –