相同结构的正则表达式但数字不同(计数)

时间:2018-05-27 07:09:23

标签: php python regex

我有一个剪贴后的链接文本文件,我需要为这些链接制作一个正则表达式,这样我就可以从文件中提取它们,但不同的链接具有相同的结构但长度不同,如

https://www.cnbc.com/2016/10/12/billionaire-richard-branson-learned-a-key-business-lesson-playing-tennis.html

和此:

https://www.cnbc.com/2016/10/12/hedge-fund-bonus-makeover.html

我可以成功为基础域制作RE,但在那个标题给我一个艰难的时间后,我的

[h][t][t][p][s]:\/\/[w][w][w].[c][n][b][c].[c][o][m]\/[2][0][1][5-8] 

https://www.cnbc.com/2016/10/11/ 但是不知道如何为不同的链接进一步提出不同的词语,

2 个答案:

答案 0 :(得分:1)

你太复杂了,

https?://\S+?cnbc\.com\S+

可能会这样做,请参阅https://regex101.com/r/ci3O1I/1/进行演示。

答案 1 :(得分:1)

您可以将正则表达式简化为以下内容:

preg_match("/http.*:\/\/www\.cnbc\.com\/201[5-8].*/", $string, $match);

这会将地址与httphttps匹配 然后是2015年和2018年之间的任何链接。

请在此处查看其工作原理:
https://www.phpliveregex.com/p/o7p