【问题标题】:Not so simple RegExp (for me) [closed]不是那么简单的正则表达式(对我来说)[关闭]
【发布时间】:2015-12-14 15:46:42
【问题描述】:

尝试从这样的文本文件中获取一些数据

14.12. 02:00    
Клемсон  // 1
Алабама  // 2
50 : 51  // 3 and 4
14.12. 01:30    
Хьюстон  // 1
ЛСЮ  // 2
105 : 98  //3 and 4
(84 : 84)

我需要的1,2,3,4个数据在哪里

1 : Клемсон  
2 : Алабама  
3 : 50 
4 : 51   

问题,有些数据有这个

105 : 98  //3 and 4
(84 : 84)

我不需要括号中的数字,只需要上面的数字。

我不知道正则表达式,但我尝试这样做https://regex101.com/r/wW0nZ7/3,如果有人可以帮助我,那就太好了!

谢谢:)

代码:

var regex = correct regex;
match = regex.exec(matches);

while (match != null) {
    play = {
        game:game,
        teamf:match[number],
        teamfscore: parseInt(match[number]),
        teams: match[number],
        teamsscore: parseInt(match[number])
    }
    //dosmth
    match = regex.exec(matches);
}

编辑: 忘了说这里有这样的数据

14.12. 05:00    
Нью-Мексико Стэйт
Вайоминг
59 : 62 
14.12. 04:00    
Аризона
Миссури
88 : 52 
14.12. 04:00    
Гранд-Каньон
Небраска О.
104 : 108
(94 : 94)   
14.12. 04:00    
ЮАБ
Сиэттл У
79 : 73 
14.12. 03:00    
Нортвестерн
Чикаго Стэйт
77 : 35 

【问题讨论】:

  • 105 : 98 //3 and 450 : 51 // 3 and 4的区别不明显:为什么要排除前者?
  • 正如我所说,我与正则表达式不相似,这让我感到害怕:(
  • 这让你感到害怕,因为你应该首先制定你正在做的事情。了解需求后,就可以想办法了。
  • @stribizhev 谢谢你的建议 :)

标签: javascript php regex


【解决方案1】:

尝试以下方法:

(^[^\d\n]+$)\n(^[^\d\n]+$)\n^(\d+)\s+:\s+(\d+)\s*$

https://regex101.com/r/wW0nZ7/4

编辑:反映更新的问题

【讨论】:

  • 更新帖子,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-29
  • 2013-06-05
  • 1970-01-01
  • 1970-01-01
  • 2014-04-27
  • 1970-01-01
相关资源
最近更新 更多